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

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

引用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>

在Springmvc配置文件中国际化bean

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

创建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>

测试结果

相关推荐
方也_arkling8 小时前
【Java-Day08】static / final / 枚举
java·开发语言
橙淮8 小时前
Spring Bean作用域与生命周期全解析
java·spring
Chengbei119 小时前
一站式源码安全检测工具、云安全 / APP / 小程序源码敏感信息递归多层目录扫描AK、JWT、手机号、身份证等敏感信息
java·开发语言·安全·web安全·网络安全·系统安全·安全架构
llz_1129 小时前
web-第一次课后作业
java·开发语言·idea
秋99 小时前
Java项目运行5天左右自动宕机:系统性定位与解决方案
java·开发语言·python
小江的记录本9 小时前
【JVM虚拟机】垃圾回收GC:垃圾收集器:CMS:核心原理、回收流程、优缺点、废弃原因(附《思维导图》+《面试高频考点清单》)
java·jvm·后端·python·spring·面试·maven
DIY源码阁9 小时前
JavaSwing学生成绩管理系统 - MySQL版
java·数据库·mysql·eclipse
basketball61610 小时前
C++ NULL 和 nullptr 区别 以及 nullptr 的核心实现
java·开发语言·c++
JAVA面经实录91711 小时前
MyBatis面试题库
java·mybatis
小江的记录本11 小时前
【JVM虚拟机】垃圾回收GC:垃圾回收算法:标记-清除、标记-复制、标记-整理、分代收集(附《思维导图》+《面试高频考点清单》)
java·jvm·后端·python·算法·安全·面试