首页 > 其他分享 >springboot 项目国际化+登录拦截器

springboot 项目国际化+登录拦截器

时间:2023-05-04 20:13:00浏览次数:37  
标签:拦截器 springboot 登录 request session 自定义

项目页面国际化

1.语言配置文件

需要下载插件Resource Bundle Editor

 新建国际目录i18n

 

在properties配置文件中自定义

 

 2.前端index页面要设置语言参数传递给后端,切换中英文

 3.自定义地区解析器MyLocaleResolver后端接收并处理

 4.自定义了一个地区解析器要生效需要到springboot的配置文件中注册

注意:这里我记得是springboot会自动找/config/**下面的目录,所以只要注册进了我们自定义的配置类MyMvcConfig就能被springboot自动匹配

 

 

登录拦截器 

拦截器,不允许登录成功后复制url就能访问页面的情况出现

首先,要判断用户是否是登录过的,利用session,判断session是否为空,在登录成功时设置session值

 

 

在配置层新增LoginHandlerInterceptor.java,判断获取到session里面的loginUser是否为空

public class LoginHandlerInterceptor implements HandlerInterceptor {
    @Override
    public boolean preHandle(HttpServletRequest request, HttpServletResponse response, Object handler) throws Exception {
        //拿到登陆成功后用户的session
        Object loginUser=request.getSession().getAttribute("loginUser");
        if(loginUser==null){
            request.setAttribute("msg","没有权限呢,请先登录");
            request.getRequestDispatcher("/index.html").forward(request,response);
        }
        else {
            return true;
        }
        return false;
    }
}
View Code

由于在父类 WebMvcConfigurer有添加拦截器的方法,因此我们直接重写即可,不需要添加@Bean,因为这是我们重写的方法而非自定义的方法

addPathPatterns添加所有请求,excludePathPatterns排除部分请求

 小细节:我们可以修改一下客户登录成功后的主页的名字为用户登录名 优化用户体验

 

标签:拦截器,springboot,登录,request,session,自定义
From: https://www.cnblogs.com/MyBlogs-joyiyii/p/17368834.html

相关文章

  • springboot mvc配置原理+扩展springmvc(重点)
    1.新建config目录2.在config目录下创建自定义配置类3.根据官方文档得到要有注解@Configuration并且继承类WebMvcConfigurer 扩展springmvc:我们慢慢脱离了原始的繁琐的xml配置,现在转向javaconfig配置 最后扩展->springmvc配置原理源码:注意点:springmvc的配置在springboo......
  • springboot 多环境配置及配置文件的位置
    了解即可  ......
  • springboot 分析源码欢迎页和图标-> thymeleaf模板引擎常用语法->扩展
    欢迎页: icon: 注意点: thymeleaf模板引擎1.使用thymeleaf模板引擎前要导入对应依赖包2.阅读源码:根据源码说明我们可以将html文件放置在templates目录下,然后通过controller进行跳转即可 controller类://在templates下的东西需要通过controller类来跳转,//需要导入......
  • SpringBoot定义优雅全局统一Restful API 响应框架三
    我们目前已经设计出了,包含全局响应,异常错误响应进行了统一返回。但是错误内容我们设计的比较模糊统一,还可以进行细化这样更有利于定位错误当我们需要调用Http接口时,无论是在Web端还是移动端,都有可能遇到各种错误,例如参数缺失、类型错误、系统错误等。为了规范错误信息的返回,我们......
  • springboot与mongodb之事务管理(二)
    一、事务说明1、在4.0版本中,MongoDB支持副本集上的多文档事务,分片集群是不支持事务的,会报以下异常TransactionsarenotsupportedbytheMongoDBclustertowhichthisclientisconnected2、在版本4.2中,MongoDB引入了分布式事务,在副本集或分片集群上都是支持事务的。3......
  • springboot单元测试中添加了@Autowired任然报错nullpoint(已解决)
     使用了autowired还是报错空指针异常说明就是包没有导入,springboot导包的操作在于启动application类,所以问题就在于没有单元测试时没有启动主类,解决方法:@RunWith(SpringJUnit4ClassRunner.class)@SpringBootTest(classes=SaTokenDemoApplication.class)加上如上的注解,@runwi......
  • 【SpringBoot】【一】 加载初始化器、监听器详解
    1 前言本节主要讲下SpringBoot启动的时候,加载初始化器、监听器的过程哈。2 加载时机我们先来看下加载的时机,也就是什么时候加载的呢,就是我们SpringBoot启动的时候,创建SpringApplication的时候就会去加载的,我们看下:@SpringBootApplicationpublicclassDemoApplicati......
  • springboot与mongodb之整合(一)
    一、添加maven依赖<dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-data-mongodb</artifactId><version>2.6.7</version></dependency>二、配置properties文件1、mongodb无......
  • springboot 切面注解方式 记录日志
    1.定义GateOpLogimportjava.lang.annotation.*;/***操作日志记录*@authorcodefulture*/@Target({ElementType.METHOD,ElementType.TYPE})@Retention(RetentionPolicy.RUNTIME)@Documentedpublic@interfaceGateOpLog{/***说明*/Strin......
  • 若依登录验证码不显示404访问问题
    最近在学习接触Java,那若依开源项目来练练手,部署后发现登录界面的登录验证码一直刷不出来,提示404访问错误。查看网上一直没找到解决办法。但知道原理都是配置文件的问题。后来在一个其他项目上找到灵感,给nginx的nginx.conf配置文件增加配置信息,项目可以正常启动并可以正常登录了。......