这篇文章主要介绍“SpringBoot如何实现登录拦截器”,在日常操作中,相信很多人在springBoot如何实现登录拦截器问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”SpringBoot如何实现登录拦截器
这篇文章主要介绍“SpringBoot如何实现登录拦截器”,在日常操作中,相信很多人在springBoot如何实现登录拦截器问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”SpringBoot如何实现登录拦截器”的疑惑有所帮助!接下来,请跟着小编一起来学习吧!
在项目目录下建立两个包:inter 与contsfig
在inter新建层中实现HandlerInterceptor的继承类
package com.example.gameboxadminserver.inter;import com.example.gameboxadminserver.entity.User;import org.springframework.WEB.servlet.HandlerInterceptor;import org.springframework.web.servlet.ModelAndView;import javax.servlet.Http.httpservletRequest;import javax.servlet.http.HttpServletResponse;import javax.servlet.http.HttpSession;public class MyInterceptor implements HandlerInterceptor {//在preHandle方法中进行登录判断 @Override public boolean preHandle(HttpServletRequest request, HttpServletResponse response, Object handler) throws Exception { HttpSession session = request.getSession(); //session.setAttribute("adminName","o"); String adminName = (String)session.getAttribute("adminName");//获取储存的session //System.out.println(adminName); if(adminName==null){ System.out.println("请先登陆!"); return false; } return true; } @Override public void postHandle(HttpServletRequest request, HttpServletResponse response, Object handler, ModelAndView modelAndView) throws Exception { //System.out.println("执行了TestInterceptor的postHandle方法"); } @Override public void afterCompletion(HttpServletRequest request, HttpServletResponse response, Object handler, Exception ex) throws Exception { }}
在conrsfig中新增WebmvcConfiguer的继承类LoginConfig
实现addInterceptors方法
package com.example.gameboxadminserver.contsfig;import com.example.gameboxadminserver.inter.MyInterceptor;import org.springframework.context.annotation.Configuration;import org.springframework.web.servlet.config.annotation.InterceptorReGIStration;import org.springframework.web.servlet.config.annotation.InterceptorRegistry;import org.springframework.web.servlet.config.annotation.WebMvcConfigurer;@Configurationpublic class LoginConfig implements WebMvcConfigurer { @Override public void addInterceptors(InterceptorRegistry registry) { //注册拦截器 InterceptorRegistration registration = registry.addInterceptor(new MyInterceptor()); registration.addPathPatterns("@Servicepublic class AdminServiceImpl extends ServiceImpl<AdminMapper, Admin> implements AdminService { @Autowired AdminMapper adminMapper; @Override public Result adminLogin(HttpSession session,String adminName, String adminPwd) { Admin admin = adminMapper.adminLogin(adminName,adminPwd); if(admin!=null){ session.setAttribute("adminName",adminName); return ResultUtil.success("登陆成功!"); } return ResultUtil.error(2000,"登陆失败"); }}
这样就写完啦
功能测试
登陆失败
无法访问其他接口
登录成功
成功访问其他接口
到此,关于“SpringBoot如何实现登录拦截器”的学习就结束了,希望能够解决大家的疑惑。理论与实践的搭配能更好的帮助大家学习,快去试试吧!若想继续学习更多相关知识,请继续关注编程网网站,小编会继续努力为大家带来更多实用的文章!
--结束END--
本文标题: SpringBoot如何实现登录拦截器
本文链接: https://www.lsjlt.com/news/342732.html(转载时请注明来源链接)
有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341
下载Word文档到电脑,方便收藏和打印~
2024-05-15
2024-05-15
2024-05-15
2024-05-15
2024-05-15
2024-05-15
2024-05-15
2024-05-15
2024-05-15
2024-05-15
回答
回答
回答
回答
回答
回答
回答
回答
回答
回答
0