首页 > 开发 > Java > 正文

spring boot 中设置默认网页的方法

2024-07-14 08:39:48
字体:
来源:转载
供稿:网友

废话不多说,直接上代码,相信都能看的懂

一共两布,第一步,创建Interceptor拦截

package com.cy.example.config;import javax.servlet.http.HttpServletRequest;import javax.servlet.http.HttpServletResponse;import javax.servlet.http.HttpSession;import org.slf4j.Logger;import org.slf4j.LoggerFactory;import org.springframework.web.servlet.HandlerInterceptor;import org.springframework.web.servlet.ModelAndView;public class LoginInterceptor implements HandlerInterceptor {  private Logger logger = LoggerFactory.getLogger(LoginInterceptor.class);  public void postHandle(HttpServletRequest request,      HttpServletResponse response, Object handler,      ModelAndView modelAndView) throws Exception {    // TODO Auto-generated method stub  }  public void afterCompletion(HttpServletRequest request,      HttpServletResponse response, Object handler, Exception ex)      throws Exception {    // TODO Auto-generated method stub  }  public boolean preHandle(HttpServletRequest request,      HttpServletResponse response, Object handler) throws Exception {    // TODO Auto-generated method stub    //获取session    HttpSession session = request.getSession(true);    logger.info("----进入登录拦截器--url:"+request.getServletPath()+"-----");    if(session.getAttribute(WebConfig.LOGIN_USER) == null){      logger.info("------跳转到login页面-----");      response.sendRedirect(request.getContextPath()+"/index");      return false;    }else{      session.setAttribute(WebConfig.LOGIN_USER, session.getAttribute(WebConfig.LOGIN_USER));      return true;    }  }}

第二步,注册创建的拦截器

package com.cy.example.config;import org.springframework.context.annotation.Configuration;import org.springframework.web.servlet.config.annotation.DefaultServletHandlerConfigurer;import org.springframework.web.servlet.config.annotation.InterceptorRegistry;import org.springframework.web.servlet.config.annotation.ResourceHandlerRegistry;import org.springframework.web.servlet.config.annotation.WebMvcConfigurerAdapter;@Configurationpublic class WebConfig extends WebMvcConfigurerAdapter {  public static String LOGIN_USER = "loginUser";  public WebConfig() {    super();  }  //因为新加了拦截器,这里需要重新设置资源地址  @Override  public void addResourceHandlers(ResourceHandlerRegistry registry) {    registry.addResourceHandler("/static/**").addResourceLocations(        "classpath:/static/");    registry.addResourceHandler("/templates/**").addResourceLocations(        "classpath:/templates/");    super.addResourceHandlers(registry);  }  @Override  public void configureDefaultServletHandling(      DefaultServletHandlerConfigurer configurer) {    configurer.enable();  }  @Override  public void addInterceptors(InterceptorRegistry registry) {    // 拦截规则:除了login,其他都拦截判断,excludePathPatterns是排除拦截的路径,一个是登录验证地址,一个是登录页    registry.addInterceptor(newLoginInterceptor()).addPathPatterns("/**").excludePathPatterns("/index","/system/user/validate");    super.addInterceptors(registry);  }}

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持VeVb武林网。


注:相关教程知识阅读请移步到JAVA教程频道。
发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表