加入收藏 | 设为首页 | 会员中心 | 我要投稿 湖南网 (https://www.hunanwang.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 建站 > 正文

一个项目标SpringCloud微处事改革进程

发布时间:2019-08-07 00:35:25 所属栏目:建站 来源:黄玲峰
导读:SSO是公司一个已经存在了多少年的项目,后端回收SpringMVC、MyBatis,数据库行使MySQL,前端展示行使Freemark。本年,我们对该项目举办了一次革命性的改造,将其改革成SpringCloud架构,而且把前后端疏散,前端回收Vue框架。 一、行使SpringCloud架构举办

sso静态资源文件路径如图:

一个项目标SpringCloud微处事改革进程

2)拦截器

SpringMVC设置文件内容:

拦截任何哀求而且初始化参数,有些哀求是不必要拦截的,有的哀求登录后不必要颠末权限校验直接放行。

  1. <mvc:interceptors> 
  2.     <mvc:interceptor> 
  3.         <mvc:mapping path="/**" /> 
  4.            <bean class="自界说拦截器PermissionInterceptor"> 
  5.            <!-- 未登录即可会见的地点 --> 
  6.           <property name="excludeUrls"> 
  7.           <list><value>哀求地点<value></list> 
  8.           </property> 
  9.           <!-- 只要登录了就不必要拦截的资源 --> 
  10.           <property name="LogInExcludeUrls"> 
  11.           <list><value>哀求地点<value></list> 
  12.           </property> 
  13.          </bean> 
  14.    </mvc:interceptor> 
  15.  </mvc:interceptors> 

SpringBoot中添加拦截器只需担任WebMvcConfigurerAdapter,并重写addInterceptors要领即可。

  1. /*** 拦截器 
  2. * @param registry 
  3. */ 
  4. @Override 
  5. public void addInterceptors(InterceptorRegistry registry) { 
  6.    registry.addInterceptor(permissionInterceptor). 
  7.            addPathPatterns("/**"); 
  8.    super.addInterceptors(registry); 

自界说的拦截器必要初始化一些参数,因此必要在注册拦截器之前注册,这里我们配置为懒加载。免登录拦截的路径,以及登录后不必要判定权限的路径都写在yml文件了,通过体系情形变量Environment获取值。

  1. @Autowired  
  2. @Lazy  
  3. private PermissionInterceptor permissionInterceptor;  
  4. @Autowired  
  5. private Environment environment;  
  6. /** 
  7. */ 
  8. @Bean 
  9. public PermissionInterceptor permissionInterceptor() { 
  10. PermissionInterceptor permissionInterceptor = new PermissionInterceptor(); 
  11. List<String> excludeUrls = Arrays.asList(environment.getProperty("intercept.exclude.path").split(",")); 
  12. List<String> commonUrls = Arrays.asList(environment.getProperty("intercept.login.exclude.path").split(",")); 
  13. permissionInterceptor.setCommonUrls(commonUrls); 
  14. permissionInterceptor.setExcludeUrls(excludeUrls); 
  15. return permissionInterceptor; 

3)数据库和MyBatis设置 

(编辑:湖南网)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

热点阅读