此步骤是修改自己代码没有公共性
16.1 国际化文件处理
将原来的国际化文件重命名如下,放到/src/resources目录下
16.2 初始化国际化类
最终需要使用MessageSource 实现国际化。将国际化类的加载放到启动加载项中InitializedThreadPool.java 启动系统时将国际化类初始化方便后续使用。
@Autowired
private MessageSource messageSource;
//中英文转换类
I18nBean.getInstance().setMessageSource(messageSource);
16.3 修改国际化类
1. 增加MessageSource 属性初始化时注入
2. 将getString()方法改成使用MessageSource 获取值
private static MessageSource messageSource;
private I18nBean(){}
private static I18nBean i18nBean = null;
private static ResourceBundle resourcesBundle_ch = null;
private static ResourceBundle resourcesBundle_en = null;
public static I18nBean getInstance(){
if(i18nBean == null){
i18nBean = new I18nBean();
}
return i18nBean;
}
public static void setMessageSource(MessageSource ms) {
messageSource = ms;
}
public static String getI18NStringByKey(String key, HttpServletRequest request) {
return messageSource.getMessage(key, null, getLocale());
}
/**
* 供页面中英文转换使用
* @param request
* @return
*/
public static ResourceBundle getResourceBundle(HttpServletRequest request) {
public static MessageSource getMessageSource() {
return messageSource;
}
public static Locale getLocale() {
return LocaleContextHolder.getLocale();
}
public static String getString(String code) {
return messageSource.getMessage(code, null, getLocale());
}
16.4 统一修改jsp国际化使用的方法
taglibs.jsp修改:
<%
I18nBean rb = I18nBean.getInstance();
%>
以上步骤完成之后jsp页面通过rb.getString();就可以获取国际化数据,就不需要每个jsp页面都修改了
相关推荐
【标题】"简单的spring boot项目"是一个基于Java的Web应用程序,使用了流行的Spring Boot框架作为基础。Spring Boot简化了创建独立、生产级别的基于Spring的应用程序的过程,它集成了大量常用的第三方库配置,如数据...
Spring Boot 是一个基于 Java 的框架,它简化了创建和配置基于 Spring 的应用程序。在这个主题下,我们将探讨 Spring Boot 如何处理静态资源、Thymeleaf 模板引擎的使用,以及如何自定义视图解析器。 1. **处理静态...
本章节主要关注Spring Boot如何整合Thymeleaf模板引擎,以及如何利用Thymeleaf进行数据的页面展示和国际化配置。 1. **Spring Boot支持的视图技术** Spring Boot默认集成了几种常见的视图技术,包括但不限于: ...
- **国际化**: 使用`#{}`引用i18n资源。 5. **配置Thymeleaf** 在Spring Boot应用中,可以通过`@ConfigurationProperties`来自定义Thymeleaf的配置,例如模板路径、缓存策略、编码方式等。也可以通过自定义`...
3. **国际化(I18N)**:支持多语言,通过消息资源文件实现页面内容的切换。 4. **条件和循环**:可以使用条件语句(如`th:if`和`th:unless`)和循环结构(如`th:each`)来控制页面元素的渲染。 在“community-master...
6. **国际化支持**:Thymeleaf可以通过`th:i18n`属性支持多语言,配合Spring Boot的国际化配置,可以轻松实现不同语言的页面内容切换。 7. **Thymeleaf缓存**:Thymeleaf允许开发者配置模板的缓存策略,以提高性能...
Thymeleaf支持多语言环境,可以使用`th:i18n`属性来获取对应的国际化消息。 5. **条件属性和属性值** 除了条件渲染外,Thymeleaf还允许根据表达式的值决定是否设置或改变HTML属性。例如,`${user.isAdmin}">`会...
此外,Thymeleaf支持国际化(i18n)和集成JavaScript。通过`th:utext`可以安全地插入用户提供的文本,防止XSS攻击。 总之,Thymeleaf提供了一个强大且灵活的模板解决方案,使得在Spring Boot应用中构建动态HTML页面...
`standard.jar`是Apache Tomcat提供的一个库,它包含了JSTL的实现,特别是JSTL的Core、Function、Format和I18N模块,以及JSP EL(Expression Language)的实现。EL是JSP 2.0引入的一种轻量级的表达式语言,用于替换...
4. **国际化(i18n)**:`<message>`标签使得在不修改代码的情况下轻松地更改应用程序的文本,这对于多语言环境非常重要。你可以通过改变`key`来引用不同的消息,而无需改动JSP或Action代码。 5. **上下文和作用域*...
5. 国际化(i18n): Thymeleaf支持多语言,可以通过`th:text="#{hello.message}"`这样的方式从资源文件中获取对应语言的字符串。 6. 模板布局: 通过定义布局模板和内容片段,Thymeleaf可以实现页面布局的复用。`th:...
7. **国际化**:Thymeleaf支持多语言环境,通过`th:i18n`和资源文件,可以轻松实现文本的国际化。 8. **标准和Spring标准方言**:Thymeleaf拥有标准方言和Spring标准方言,后者专为Spring框架设计,提供了与Spring ...
9. **国际化(i18n)** Thymeleaf能与Spring的MessageSource接口集成,实现多语言支持。通过`th:text="#{message.key}"`来获取对应的语言资源。 10. **条件注解和选择性渲染** Thymeleaf提供`th:switch`和`th:case`...
4. **国际化**:Thymeleaf支持多语言环境,通过`th:i18n`属性实现。测试需要覆盖不同语言环境,确保翻译的正确性。 5. **集成Spring**:在Spring Boot应用中,Thymeleaf与Spring MVC无缝集成,可以方便地处理请求...
4. **国际化**: Thymeleaf支持多语言环境,通过`th:i18n`等指令,可以方便地切换和显示不同语言的文本。 5. **表单处理**: Thymeleaf提供了丰富的表单处理能力,包括数据绑定、验证错误展示等。`th:field`指令可以...
7. **国际化(i18n)**:Thymeleaf支持多语言,通过资源文件(如`messages.properties`)来提供不同语言的文本,模板中的`th:text`等指令可以结合EL来动态选择语言版本。 通过学习和实践"thymeleafBase"项目,...