300字范文,内容丰富有趣,生活中的好帮手!
300字范文 > 国际化更换英中文

国际化更换英中文

时间:2023-07-25 03:50:41

相关推荐

国际化更换英中文

1、国际化文件格式

文件名_语言编码_国家编码.properties

lan_zh_CN.properties 中文

lan_en_US.properties 英文

lan.properties 默认

在resources文件夹下创建一个i18n文件夹,创建上面三个文件

2、编写配置文件

3、修改页面

注意添加<html lang="en" xmlns:th="">

<form><input type="text" th:placeholder="#{lan.username}"><br></form>

4、添加切换按钮

<a th:href="@{/lan(l='zh-CN')}">中文</a><a th:href="@{/lan(l='en-US')}">英文</a>

5、后台处理请求

@Controllerpublic class TestController {@RequestMapping("/lan")public String lan(){return "index";}}

6、编写区域解析器

package com.dhf.springboot2;import jakarta.servlet.http.HttpServletRequest;import jakarta.servlet.http.HttpServletResponse;import org.springframework.context.annotation.Bean;import org.springframework.context.annotation.Configuration;import org.springframework.web.servlet.LocaleResolver;import java.util.Locale;@Configuration//自定义解析器public class MyLocalResolver implements LocaleResolver {@Overridepublic Locale resolveLocale(HttpServletRequest request) {//返回国际化对象//可以请求头信息中获取国际化信息:语言编码、国家编码String header=request.getHeader("Accept-Language");//手动选择:参数里面有国际化信息l='zh-CN'String l=request.getParameter("l");//定义变量Locale locale=null;//判断String[] split;if(l!=null){split = l.split("-");}else{split = header.split(",")[0].split("-");}locale=new Locale(split[0],split[1]);return locale;}@Overridepublic void setLocale(HttpServletRequest request, HttpServletResponse response, Locale locale) {}@Beanpublic LocaleResolver localeResolver(){return new MyLocalResolver();}}

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。