Springboot 拦截器中使用application.properties配置的值

需求

1.Springboot项目中,拦截器中想要获取到application.yml中的值
2.Springboot项目中,拦截器中想要注入 RestTemplate或者其他对象
3.Springboot项目中,使用了拦截器如果过滤掉swagger,让swagger可以正常访问。

实现

InterceptorProperties.java

读取application.yml中user开头的配置。

@Component
@ConfigurationProperties(prefix = "user")
public class InterceptorProperties {
    private String path;
    private String index;
    private String noauth;
    public String getNoauth() {
        return noauth;
    }
    public void setNoauth(String noauth) {
        this.noauth = noauth;
    }
    public String getIndex() {
        return index;
    }
    public void setIndex(String index) {
        this.index = index;
    }
    public String getPath() {
        return path;
    }
    public void setPath(String path) {
      
  • 2
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
要在使用JSP整合Spring Boot的项目配置拦截器实现登录,您可以按照以下步骤操作: 1. 创建一个拦截器类,实现HandlerInterceptor接口,并实现其preHandle、postHandle和afterCompletion方法,用于在请求处理前、处理后和完成后执行相应的操作,比如验证登录信息、记录日志等。 2. 修改Spring Boot的配置文件application.properties,添加配置项,使Spring Boot能够扫描到拦截器类。例如: ``` # 拦截器配置 # 拦截器类所在的包名 spring.mvc.interceptor.exclude=*.css,*.js,/login spring.mvc.interceptor.include=/admin/** ``` 在上面的配置,exclude表示不需要拦截的请求,include表示需要拦截的请求。这里我们设置只拦截/admin/下的请求。 3. 创建一个Controller类,用于处理用户登录请求。在该类,可以使用@SessionAttribute注解将用户登录信息存储到Session,以便在其他页面进行验证。例如: ``` @Controller public class LoginController { @Autowired private UserService userService; @RequestMapping("/login") public String login(String username, String password, Model model, HttpSession session) { User user = userService.checkLogin(username, password); if (user != null) { session.setAttribute("user", user); return "redirect:/admin/index"; } else { model.addAttribute("msg", "用户名或密码错误!"); return "login"; } } } ``` 4. 在JSP页面使用JSTL标签库或EL表达式获取Session的用户信息,以便进行权限验证。例如: ``` <c:if test="${not empty sessionScope.user}"> <a href="/logout">退出</a> </c:if> ``` 在上面的代码,如果Session存在user对象,则显示退出链接,否则不显示。 以上就是使用JSP整合Spring Boot配置拦截器实现登录的基本步骤,您可以根据实际需求进行相应的修改和扩展。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值