当前位置: 首页 > news >正文

松原做网站的公司网站建设推广公司哪家权威

松原做网站的公司,网站建设推广公司哪家权威,产品运营主要做什么,wordpress模板网站标题重复目录 1.主页结构​编辑 1.1 导航栏 1.2 正文部分 1.3 页脚部分 2.个人中心 2.1 获取用户信息 1.实现逻辑 2. 参数要求​编辑 3.接口规范 4.实现流程 4.1 Mapper.xml 4.2 Mapper.java(dao层) 4.3 Service接口 4.4 Service实现 4.5 单元测试 4.6 Controller ​编辑…

目录

1.主页结构​编辑

1.1 导航栏

1.2 正文部分

1.3 页脚部分

2.个人中心

2.1 获取用户信息

1.实现逻辑

2. 参数要求​编辑

 3.接口规范

4.实现流程

4.1 Mapper.xml

4.2 Mapper.java(dao层)

 4.3 Service接口

4.4 Service实现

4.5 单元测试

4.6 Controller

​编辑

 4.7 API测试

 4.8 修复返回值存在的缺陷

​编辑

4.9 前端

5.退出登录

6.登录拦截器


1.主页结构

1.1 导航栏

1.2 正文部分

1.3 页脚部分

2.个人中心

2.1 获取用户信息

两种情况

1.实现逻辑

2. 参数要求

 3.接口规范

4.实现流程

4.1 Mapper.xml
4.2 Mapper.java(dao层)

 4.3 Service接口

4.4 Service实现
/*** 根据Id查询用户信息** @param id 用户Id* @return User对象*/@Overridepublic User selectById(Long id) {// 1.非空校验if(id == null) {// 打印日志log.warn(ResultCode.FAILED_PARAMS_VALIDATE.toString());// 抛出异常, 统一抛出 ApplicationExceptionthrow new ApplicationException(AppResult.failed(ResultCode.FAILED_LOGIN));}// 调用 DAO 查询数据库获取对象User user = userMapper.selectByPrimaryKey(id);return user;}
4.5 单元测试
 @Testvoid selectById() {System.out.println(userService.selectById(1L));}
4.6 Controller
@ApiOperation("获取用户信息")@GetMapping("/info")public AppResult<User> getUserInfo (HttpServletRequest request,@ApiParam("用户ID") @RequestParam(value = "id", required = false) Long id) {User user = null;// 根据id的值来判断User对象的获取方式if(id == null) {// 1.如果id为空, 从session中获取当前登录的用户信息HttpSession session = request.getSession(false);if (session == null || session.getAttribute(AppConfig.USER_SESSION) == null) {return AppResult.failed(ResultCode.FAILED_FORBIDDEN);}// 从session中获取当前登录的用户信息user = (User)session.getAttribute(AppConfig.USER_SESSION);}else {// 2.如果id不为空, 从数据库中按Id查询出用户登录信息user = userService.selectById(id);}if (user == null) {return AppResult.failed(ResultCode.FAILED_USER_NOT_EXISTS);}// 返回正常结果return AppResult.success(user);}
 4.7 API测试

 4.8 修复返回值存在的缺陷

4.9 前端

5.退出登录

6.登录拦截器

创建登录拦截器

package com.example.forum.interceptor;import com.example.forum.config.AppConfig;
import org.springframework.beans.factory.annotation.Value;
import org.springframework.stereotype.Component;
import org.springframework.web.servlet.HandlerInterceptor;import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import javax.servlet.http.HttpSession;/*** Created with IntelliJ IDEA* Description 登录拦截器* User: 王杰* Date: 2025-06-15* Time: 13:08*/
@Component
public class LoginInterceptor implements HandlerInterceptor {@Value("{forum.login.url}")private String defaultURL;/*** 前置处理(对请求的预处理)* @param request* @param response* @param handler* @return true: 继续流程 <br/> false : 流程中断* @throws Exception*/@Overridepublic boolean preHandle(HttpServletRequest request, HttpServletResponse response, Object handler) throws Exception {// 获取 session 对象HttpSession session = request.getSession(false);// 判断session是否有效if (session != null && session.getAttribute(AppConfig.USER_SESSION) != null) {// 用户为已登陆状态 校验通过return true;}// 校验URL是否正确if(!defaultURL.startsWith("/")) {defaultURL = "/" + defaultURL;}// 校验不通过 跳转到登录页面response.sendRedirect(defaultURL);// 中断流程return false;}
}

注册拦截器:

package com.example.forum.interceptor;import org.springframework.context.annotation.Configuration;
import org.springframework.web.servlet.config.annotation.InterceptorRegistry;
import org.springframework.web.servlet.config.annotation.WebMvcConfigurer;import javax.annotation.Resource;/*** Created with IntelliJ IDEA* Description* User: 王杰* Date: 2025-06-15* Time: 14:34*/
// 表示一个配置类
@Configuration
public class AppInterceptorConfigurer implements WebMvcConfigurer {// 注入自定义的登录拦截器@Resourceprivate LoginInterceptor loginInterceptor;@Overridepublic void addInterceptors(InterceptorRegistry registry) {// 添加登录拦截器registry.addInterceptor(loginInterceptor)       // 添加用户登录拦截器.addPathPatterns("/**")                 // 拦截所有请求.excludePathPatterns("/sign-in.html")   // 排除登录HTML.excludePathPatterns("/sign-up.html")   // 排除注册HTML.excludePathPatterns("/user/login")     // 排除登录api接口.excludePathPatterns("/user/register")  // 排除注册api接口.excludePathPatterns("/user/logout")    // 排除退出api接口.excludePathPatterns("/swagger*/**")    // 排除登录swagger下所有.excludePathPatterns("/v3*/**")         // 排除登录v3下所有, 与swagger相关.excludePathPatterns("/dist/**")        // 排除所有静态方法.excludePathPatterns("/image/**")       //.excludePathPatterns("/js/**").excludePathPatterns("/**.ico");}
}

这下就可以达成 访问需要登陆的页面,如果没有登录就会返回登录页面。如果登录了就正常执行

,同时可以删除业务代码中相同逻辑代码,避免冗余代码。

http://www.yayakq.cn/news/348891/

相关文章:

  • 吉安网站设计网站建设 网站优化营销型网站建设专家
  • 小说短篇做的好的网站湖南建筑人才网招聘
  • 江西建站哪家专业wordpress 中文杂志主题
  • 蒙文网站建设情况汇报python做网站前端
  • 360网站建设公司企炬网站
  • 什么网站是用php做的网易企业邮箱登录入口登录入口
  • 烟台做网站公司哪家好壹互联是网站公司吗
  • 昆明婚恋网站价格网站建设价位
  • 网站推广优化业务网站编程所用的语言有
  • 做外贸推广的网站上海 网站设计
  • 电子商务网站开发主要实现功能软件开发公司app
  • 现在清算组备案在哪个网站做河南招标投标信息网
  • 商城网站建设 亚马逊wordpress 显示一篇文章
  • 石家庄市里的网站公司wordpress 推荐环境
  • 优秀网站主题百度关键词怎么设置
  • 建设网站需要几级安全等保明星网页设计模板图片
  • 如何更换网站新域名东莞电商网站公司
  • 好f123网站青海省高速公路建设管理局网站
  • wap网站设计方案什么是网站推广策略
  • 国外大气网站设计商务网站建设过程
  • 汕头网站设计开发专业网站空间买什么的好
  • 国内漂亮大气的网站网站提交地址
  • 顺义手机网站设计番禺人才网单位招考
  • 杭州酒店网站建设net网站开发微信支付
  • 网站未备案怎么访问保定哪里有做网站的
  • 哪里有建站代理加盟镇江网站建设策划
  • 选服务好的网站建设公司免费的分销小程序
  • 诚一网站推广成都网站制作哪家好
  • 做淘宝客网站好搭建吗有什么网站可以接活做设计
  • 嘉兴专业网站排名推广个体户 网站建设