spring security国际化及UserCache的配置和使用

发布时间 - 2026-01-11 03:22:29    点击率:

国际化配置

<!-- 定义上下文返回的消息的国际化 --> 
<bean id="messageSource" 
  class="org.springframework.context.support.ReloadableResourceBundleMessageSource"> 
  <property name="basename" 
    value="classpath:config/messages_zh_CN"/> 
</bean> 

basename中配置的是消息文件的路径

在spring-security-core-3.2.0.M1.jar包中的org.springframework.security下可以找到国际化文件,可以直接拿来,这个类也可以用在项目中

@Autowired 
private MessageSource messageSource; 

这样就可以在类中引如MessageSource使用了,MessageSource提供了下面三个方法

1.String getMessage(String code, Object[] args, String defaultMessage, Locale locale);  

2.String getMessage(String code, Object[] args, Locale locale) throws NoSuchMessageException;  

3.String getMessage(MessageSourceResolvable resolvable, Locale locale) throws NoSuchMessageException;  

比如我们在property文件中定义了如下消息

1.UserDetails.isLocked=用户已被锁定  

2.UserDetails.userNotFound=用户{0}不存在  

然后使用getMessage方法

getMessage("UserDetails.isLocked",null,null) //用户已被锁定
getMessage("UserDetails.isLocked",new Object[]{“admin”},null) //用户admin不存在

UserCache配置,通过ecahe实现

<!-- 启用用户的缓存功能 --> 
<bean id="userCache" 
  class="org.springframework.security.core.userdetails.cache.EhCacheBasedUserCache"> 
  <property name="cache" ref="userEhCache" /> 
</bean> 
<bean id="userEhCache" class="org.springframework.cache.ehcache.EhCacheFactoryBean"> 
  <property name="cacheName" value="userCache" /> 
  <property name="cacheManager" ref="cacheManager" /> 
</bean>  
<bean id="cacheManager" 
class="org.springframework.cache.ehcache.EhCacheManagerFactoryBean" /> 

ehcache.xml

<cache 
  name="userCache" 
  maxElementsInMemory="100" 
  eternal="false" 
  timeToIdleSeconds="600" 
  timeToLiveSeconds="3600" 
  overflowToDisk="true" 
/> 
注入ecache
@Autowired 
private UserCache userCache; 

这样在程序中就可以通过

this.userCache.getUserFromCache(username);获取到缓存中的用户对象

用户对象为UserDetails类型

总结

以上所述是小编给大家介绍的spring security国际化及UserCache的配置和使用,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对网站的支持!


# spring  # security  # 国际化  # usercache  # 配置  # Spring Boot Security 结合 JWT 实现无状态的分布式API接口  # spring security动态配置url权限的2种实现方法  # SpringBoot + Spring Security 基本使用及个性化登录配置详解  # 详解Spring Security 简单配置  # 详解spring security 配置多个AuthenticationProvider  # spring security在分布式项目下的配置方法(案例详解)  # 已被  # 不存在  # 小编  # 的是  # 在此  # 可以通过  # 给大家  # 可以直接  # 用在  # 中就  # 可以找到  # 所述  # 给我留言  # 感谢大家  # 就可以  # 类中  # 包中  # 疑问请  # 有任何  # 使用了 


相关栏目: 【 网站优化151355 】 【 网络推广146373 】 【 网络技术251813 】 【 AI营销90571


相关推荐: 通义万相免费版怎么用_通义万相免费版使用方法详细指南【教程】  如何自定义safari浏览器工具栏?个性化设置safari浏览器界面教程【技巧】  Laravel怎么集成Log日志记录_Laravel单文件与每日日志配置及自定义通道【详解】  北京网页设计制作网站有哪些,继续教育自动播放怎么设置?  韩国代理服务器如何选?解析IP设置技巧与跨境访问优化指南  如何快速上传自定义模板至建站之星?  如何利用DOS批处理实现定时关机操作详解  如何确保FTP站点访问权限与数据传输安全?  Laravel API资源(Resource)怎么用_格式化Laravel API响应的最佳实践  怎么用AI帮你设计一套个性化的手机App图标?  如何在浏览器中启用Flash_2025年继续使用Flash Player的方法【过时】  JavaScript数据类型有哪些_如何准确判断一个变量的类型  免费的流程图制作网站有哪些,2025年教师初级职称申报网上流程?  如何快速搭建自助建站会员专属系统?  微信小程序 HTTPS报错整理常见问题及解决方案  Laravel如何实现URL美化Slug功能_Laravel使用eloquent-sluggable生成别名【方法】  Laravel如何实现图片防盗链功能_Laravel中间件验证Referer来源请求【方案】  香港服务器选型指南:免备案配置与高效建站方案解析  javascript基本数据类型及类型检测常用方法小结  Win11怎么设置虚拟桌面 Win11新建多桌面切换操作【技巧】  标准网站视频模板制作软件,现在有哪个网站的视频编辑素材最齐全的,背景音乐、音效等?  如何在IIS中新建站点并解决端口绑定冲突?  Laravel怎么实现观察者模式Observer_Laravel模型事件监听与解耦开发【指南】  潮流网站制作头像软件下载,适合母子的网名有哪些?  Laravel怎么解决跨域问题_Laravel配置CORS跨域访问  如何用5美元大硬盘VPS安全高效搭建个人网站?  mc皮肤壁纸制作器,苹果平板怎么设置自己想要的壁纸我的世界?  如何打造高效商业网站?建站目的决定转化率  laravel怎么为应用开启和关闭维护模式_laravel应用维护模式开启与关闭方法  Python正则表达式进阶教程_复杂匹配与分组替换解析  香港网站服务器数量如何影响SEO优化效果?  Laravel怎么创建控制器Controller_Laravel路由绑定与控制器逻辑编写【指南】  网页设计与网站制作内容,怎样注册网站?  Laravel Eloquent模型如何创建_Laravel ORM基础之Model创建与使用教程  Windows10怎样连接蓝牙设备_Windows10蓝牙连接步骤【教程】  Laravel怎么实现验证码功能_Laravel集成验证码库防止机器人注册  Laravel的.env文件有什么用_Laravel环境变量配置与管理详解  邀请函制作网站有哪些,有没有做年会邀请函的网站啊?在线制作,模板很多的那种?  Laravel中间件如何使用_Laravel自定义中间件实现权限控制  Laravel怎么防止CSRF攻击_Laravel CSRF保护中间件原理与实践  php在windows下怎么调试_phpwindows环境调试操作说明【操作】  无锡营销型网站制作公司,无锡网选车牌流程?  手机软键盘弹出时影响布局的解决方法  *服务器网站为何频现安全漏洞?  专业型网站制作公司有哪些,我设计专业的,谁给推荐几个设计师兼职类的网站?  php打包exe后无法访问网络共享_共享权限设置方法【教程】  Laravel怎么调用外部API_Laravel Http Client客户端使用  详解jQuery中基本的动画方法  html5源代码发行怎么设置权限_访问权限控制方法与实践【指南】  极客网站有哪些,DoNews、36氪、爱范儿、虎嗅、雷锋网、极客公园这些互联网媒体网站有什么差异?