spring boot 中设置默认网页的方法
更新时间:2018年04月03日 09:58:28 作者:pj小小码农
这篇文章主要介绍了spring boot 中设置默认网页的方法,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧
废话不多说,直接上代码,相信都能看的懂
一共两布,第一步,创建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;
@Configuration
public 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(new
LoginInterceptor()).addPathPatterns("/**").excludePathPatterns("/index","/system/user/validate");
super.addInterceptors(registry);
}
}
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持脚本之家。
您可能感兴趣的文章:
相关文章
Spring Cloud OAuth2中/oauth/token的返回内容格式
Spring Cloud OAuth2 生成access token的请求/oauth/token的返回内容就需要自定义,本文就详细介绍一下,感兴趣的可以了解一下2021-07-07
详解Java8 CompletableFuture的并行处理用法
Java8中有一个工具非常有用,那就是CompletableFuture,本章主要讲解CompletableFuture的并行处理用法,感兴趣的小伙伴可以了解一下2022-04-04
IDEA使用maven创建hibernate项目的实现步骤(图文)
本文主要介绍了IDEA使用maven创建hibernate项目的实现步骤,包括创建Maven项目,配置Hibernate,以及创建实体类映射到数据库等步骤,具有一定的参考价值,感兴趣的可以了解一下2023-08-08


最新评论