首页 > 其他分享 >i18n国际化配置

i18n国际化配置

时间:2024-05-16 14:43:47浏览次数:25  
标签:国际化 Locale 配置 springframework org i18n import servlet

  1. 在resources文件下新建i18n文件,并新建国际化资源文件: Resource Bundle。

  2. 点击新增Resource Bundle文件,在Resource bundle base name处填写国际化文件的名称,例如“login”。并点击中间偏右的“+”号,新增国际化语言,此处新增两个语言“zh_CN”,“en_US”。

  3. 分别在两个文件中添加你想要的配置。

  4. 添加配置文件:

    spring:
      messages:
        basename: login
    
  5. 假如想点击链接让我们自己的国际化资源生效,就需要让我们自己的Locale生效。

    package com.test.config;
     
    import org.springframework.web.servlet.LocaleResolver;
    import org.thymeleaf.util.StringUtils;
     
    import javax.servlet.http.HttpServletRequest;
    import javax.servlet.http.HttpServletResponse;
    import java.util.Locale;
     
    public class MyLocaleResolver implements LocaleResolver {
        @Override
        public Locale resolveLocale(HttpServletRequest request) {
            //获取请求中的语言参数
            String language = request.getParameter("l");
            Locale locale = Locale.getDefault();//如果没有就是用默认的
     
            //如果请求的链接携带了国际化的参数
            if(!StringUtils.isEmpty(language)){
                //zh_CN
                String[] split = language.split("_");
                // 语言,国家
                locale = new Locale(split[0], split[1]);
            }
            return locale;
        }
     
        @Override
        public void setLocale(HttpServletRequest request, HttpServletResponse response, Locale locale) {
     
        }
    }
    
  6. 让区域化信息能够生效,需要再配置一下这个组件,在自己的MvcConofig下添加bean。

    package com.test.config;
     
    import org.springframework.context.annotation.Bean;
    import org.springframework.context.annotation.Configuration;
    import org.springframework.web.servlet.LocaleResolver;
    import org.springframework.web.servlet.config.annotation.WebMvcConfigurer;
     
    @Configuration
    public class MyMvcConfig implements WebMvcConfigurer {
       
        //自定义的国际化组件就生效了
        @Bean
        public LocaleResolver localeResolver(){
            return new MyLocaleResolver();
        }
     
    }
    

标签:国际化,Locale,配置,springframework,org,i18n,import,servlet
From: https://www.cnblogs.com/hytip/p/18195901

相关文章

  • 配置git账户
    解决git痛点不想每一次拉取推送都输入账户密码多个git托管平台如何拉取同一平台,多个git账号如何拉取不想记一大堆繁杂的命令行,也不想配置公匙,只想简简单单用https拉取推送问题1:每一次都需要输入账户密码找到文件.gitconfig文件c盘--》User--》www--》.gitconfig注意:www......
  • vue路由配置
    一目的建一个vue路由 二步骤1.安装路由,顺便打开package.json方便查看版本npminstallvue-router@4 2.src下创建router目录,route目录创建index.js文件import{createRouter,createWebHistory}from"vue-router";//创建路由规则constroutes=[......
  • SpringBoot笔记:SpringBoot启动参数配置
    /usr/local/jdk/jdk1.8.0_261/bin/java-jar-server\##服务模式,linux默认是server模式,window默认是client参数-XX:+HeapDumpOnOutOfMemoryError\##当OOM发生时自动生成HeapD......
  • Nacos热更新静态变量配置
    Nacos热更新静态变量配置Springboot项目接入nacos,配置文件统一管理,但静态常量无法通过@Value注解实时热更新(如下所示)。GlobalVariables.java@ComponentpublicclassGlobalVariables{//测试热加载配置字段publicstaticStringtestInfo;@Value("${test......
  • idea社区版如何配置gradle工具
    idea项目没有gradle工具栏?新建gradle项目;再第一步的基础上,然后再setting搜索gradle,找到gradle工具;已有gradle项目在idea中没有gradle的配置工具显示,如何导入呢?新建,选择第二个选项,在项目文件夹中找到build.gradle文件,新窗口打开;然后再项目结构中配置jdk版本,结果如下......
  • 如何配置gradle环境
    下载gradle版本;配置环境变量在gradle文件下的init.d新建init.gradle文件内容如下:allprojects{repositories{ //本地存放依赖的路径maven{url'file:///D:\3_env\java\gradle\gradle-7.6.1\repo'}mavenLocal()maven{name"Alib......
  • 阿里nginx error日志配置
    配置名称:nginx_sys_error_log_config 日志主题类型->文件路径提取->\/var\/log\/nginx\/(.*?)\/error.log文件路径:/var/log/nginx/    error.log  最大目录监控深度:2层日志样例:2024/01/2701:25:58[crit]221214#221214:*29786open()"/var/log/nginx/zhixiaoer......
  • 配置MySQL主从复制和读写分离
    实验环境序号主机名IP地址备注1mysql-master192.168.204.201MySQL主库2mysql-slave192.168.204.202MySQL从库3appserver192.168.204.111应用服务器安装配置MySQL数据库1.使用yum安装mysql和mysql-serveryuminstall-ymariadbmariadb-server2.启......
  • 为什么hangfire 界面上显示的下次执行时间与配置的定时执行时间不一致
    hangfire定时任务,定位每天晚上11点55分执行;core表达式也展示是11点55执行,但下一次执行时间,展示的是每天3点执行的任务。原因:AddOrUpdate中的TimeZoneInfo(时区)参数默认是世界Utc时间,UTC时区与我们中国时区相差八个小时。需要设置TimeZoneInfo参数设置为TimeZoneInfo.Local,使......
  • vue 前端配置
    前端配置1axios安装cnpminstallaxios-Smain.js中importaxiosfrom'axios'Vue.prototype.$axios=axios2elementui安装cnpminstallelement-ui-Smain.js中importElementUIfrom'element-ui';import'element-ui/lib/theme-cha......