首页 > 其他分享 >spring mvc 3 国际化(下)——简单自定义操作

spring mvc 3 国际化(下)——简单自定义操作

时间:2023-03-22 15:04:29浏览次数:47  
标签:return 自定义 localeResolver spring request mvc new LocaleChangeInterceptor public


根据域名来判断用户语言:

1.定义一个对象;SelfLocaleResolver


1. public class SelfLocaleResolver extends
2. @Override
3. public
4. if ("127.0.0.1".equalsIgnoreCase(request.getRemoteHost())) {
5. return new Locale("zh");
6. else
7. return new Locale("en");
8. }
9. }
10.
11. @Override
12. public void
13. }
14.
15. }


 这里是表示 访问的域名是 127.0.0.1 则显示为中文 访问其它为英文

2.配置文件中加入

 


1. <bean id="localeResolver" class="com.xxx.SelfLocaleResolver"/>


 

3.结束

LocaleChangeInterceptor的源码:

LocaleChangeInterceptor 的作用:URL中传递一个参数来修改用户语言。http://localhost:8080?change=en

 

 

1. public class LocaleChangeInterceptor extends
2.
3.
4. @Override
5. public boolean
6. throws
7. //获取用户传递的参数
8. this.paramName);
9. if (newLocale != null) {
10. //localeResolver 为在配置文件中配置的对象
11. LocaleResolver localeResolver = RequestContextUtils.getLocaleResolver(request);
12. if (localeResolver == null) {
13. throw new IllegalStateException("No LocaleResolver found: not in a DispatcherServlet request?");
14. }
15. //cookie和session存储的时候才可以修改。
16. localeResolver.setLocale(request, response, StringUtils.parseLocaleString(newLocale));
17. }
18. return true;
19. }
20.
21. }

 

附件中有源码。

 

 

 



标签:return,自定义,localeResolver,spring,request,mvc,new,LocaleChangeInterceptor,public
From: https://blog.51cto.com/u_2650279/6142630

相关文章

  • fastadmin添加自定义button按钮
    fastadmin添加自定义button按钮  fastadmin添加自定义按钮1、首先在初始化表格参数配置中添加URL,添加所需要的按钮地址 2、然后再初始化表格中,这这个位......
  • springboot动态修改properties文件
    importjava.io.BufferedWriter;importjava.io.FileInputStream;importjava.io.FileOutputStream;importjava.io.IOException;importjava.io.OutputStreamWriter;......
  • 不用spring,可以吗?
    摘自:https://www.zhihu.com/question/537894826Java开发不用Spring生态有前途吗?比如在某些大厂自己封装好的框架直接用,感觉没啥提升新增:做后端web开发。这套框架......
  • 29.自定义异常
    自定义异常publicclassMyExceptionextendsException{//继承//传递数>10抛出异常privateintdetail;publicMyException(inta){this.......
  • 一统天下 flutter - 动画: 自定义 Tween - ColorTween, CurveTween, SizeTween, RectT
    一统天下flutterhttps://github.com/webabcd/flutter_demo作者webabcd一统天下flutter-动画:自定义Tween-ColorTween,CurveTween,SizeTween,RectTween,A......
  • SMU Spring 2023 Trial Contest Round 1(6/8)
    SMUSpring2023TrialContestRound1(6/8)A.PrependandAppendPrependandAppend只需考虑给定字符串两端是否符合10或01即可,双指针从两端模拟即可。#include<iost......
  • SpringMVC配置文件位置
    [size=large][color=red]在工程内:[/color][/size]<context:property-placeholderlocation="classpath:/site.properties"/>[size=large][color=red......
  • Spring MVC视图解析器:配置多个视图解析器的优先级
    [color=red]问题[/color]在SpringMVC应用程序中,我们经常需要应用一些视图解析器策略来解析视图名称。例如,联合使用三个视图解析器:InternalResourceViewResolver、Resourc......
  • Spring MVC拦截器+注解方式实现防止表单重复提交
    原理:在新建页面中Session保存token随机码,当保存时验证,通过后删除,当再次点击保存时由于服务器端的Session中已经不存在了,所有无法验证通过。注,如果是集群的方式,则需要将tok......
  • Java Spring使用EventSource进行服务端推送
    Java代码:@ResponseBody@RequestMapping(value="/getDate",produces="text/event-stream;charset=UTF-8")publicvoidgetDate(HttpServletResponse......