当前位置: 首页 > article >正文

在SpringMVC中用fmt标签实现国际化/多语言

SpringMVC中用fmt标签实现国际化主要解决界面的多语言化,ftm标签会根据浏览器的语言值来先择对应的文件配置,如中文简体的浏览器值是zh_CN,那么ftm标签就会用以zh_CN.properties结尾的配置文件中的key来取值,从而实现自多语言的自动切换,配置应用如下:

  1. 引用JSTL相关依赖包

    <dependency>
    			<groupId>javax.servlet</groupId>
    			<artifactId>javax.servlet-api</artifactId>
    			<version>3.0.1</version>
    			<scope>provided</scope>
    </dependency>
    <!-- jstl相关jar包 -->
    		<dependency>
    			<groupId>javax.servlet</groupId>
    			<artifactId>jstl</artifactId>
    			<version>1.2</version>
    		</dependency>
    
    		<dependency>
    			<groupId>taglibs</groupId>
    			<artifactId>standard</artifactId>
    			<version>1.1.2</version>
    		</dependency>

  2. 在Springmvc配置文件中国际化bean
     

    	<bean id="messageSource"
    		class="org.springframework.context.support.ResourceBundleMessageSource">
    		<!-- 表示语言配置文件是以language开头的文件,(如果是简体中文语言的浏览器则会读取language_zh_CN.properties文件) -->
    		<property name="basename" value="language" />
    	</bean>

  3. 创建language.properties文件,并同时创建对应语言语文件,如简体中文则为zh_CN.properties结尾,美国英文则为 en_US.properties结尾
     

    -----language.properties------
    
    language.username=username
    language.password=password
    
    
    -----language_en_US.properties-----
    language.username=Username
    language.password=Password
    
    
    ------language_zh_CN.properties-----
    
    language.username=\u7528\u6237\u540D
    language.password=\u5BC6\u7801
    

    如图:

  4. 在JSP页面中使用
     

    <%@ page language="java" contentType="text/html; charset=utf-8"
        pageEncoding="utf-8"%>
       <%@ taglib prefix="fmt" uri="http://java.sun.com/jsp/jstl/fmt"%>
    <!DOCTYPE html>
    <html>
    <head>
    <meta charset="utf-8">
    <title>国际化语言</title>
    </head>
    <body>
    <form action="${pageContext.request.contextPath}/testConsumes" method="post">
    <fmt:message key="language.username"></fmt:message><input  type="text" name="username" value="">
    <fmt:message key="language.password"></fmt:message><input  type="text" name="password" value="">
    <input type="submit" value="提交">
    </form>
    当前语言: ${pageContext.response.locale}
    </body>
    </html>

  5. 测试结果


http://www.kler.cn/a/289818.html

相关文章:

  • 丹摩征文活动|丹摩智算平台使用指南
  • GxtWaitCursor:Qt下基于RAII的鼠标等待光标类
  • Autosar CP 基于CAN的时间同步规范导读
  • NoSQL数据库与关系型数据库的主要区别
  • 【C++】C++11特性(上)
  • 笔记 | image may have poor performance,or fail,if run via emulation
  • 装饰器模式(Decorator Pattern)
  • MACOS安装配置前端开发环境
  • 北芯生命持续亏损:产能利用率不理想仍扩产能,销售费用越来越高
  • Python世界:文件自动化备份实践
  • 由一个 SwiftData “诡异”运行时崩溃而引发的钩深索隐(一)
  • 工业交换机如何确保品质
  • glsl着色器学习(四)
  • 日常避坑指南:如何合理利用Swap优化MongoDB内存管理
  • Linux驱动开发基础(IRDA 红外遥控模块)
  • E6000物联网主机:打造智慧楼宇的未来
  • Linux:vim编辑器的基本使用
  • 不小心删除丢失了所有短信?如何在 iPhone 上查找和恢复误删除的短信
  • 6 自研rgbd相机基于rk3566之深度计算库移植及测试
  • Spring Boot集成Spring Cloud Scheduler进行任务调度
  • 如何使用Spoon连接data-integration-server并在服务器上执行转换
  • nginx配置白名单服务
  • Gnu: binutils: ld: .gnu.warning.链接时的主动警告 glibc
  • IP地址与物理地址:‌区别解析及在网络通信中的作用
  • 开始使用 ROS 工具箱
  • 3144. 分割字符频率相等的最少子字符串