java – .properties文件中的消息不显示UTF-8字符

前端之家收集整理的这篇文章主要介绍了java – .properties文件中的消息不显示UTF-8字符前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
正如标题所示,我只能补充说,如果我在html文件中手动输入ąęó,没关系.

视图解析器:

  1. <bean id="templateResolver" class="org.thymeleaf.templateresolver.ServletContextTemplateResolver">
  2. <property name="prefix" value="/WEB-INF/templates/" />
  3. <property name="suffix" value=".html" />
  4. <property name="templateMode" value="HTML5" />
  5. <property name="cacheable" value="false"/>
  6. <property name="characterEncoding" value="UTF-8"/>
  7. </bean>
  8.  
  9. <bean id="templateEngine" class="org.thymeleaf.spring3.SpringTemplateEngine">
  10. <property name="templateResolver" ref="templateResolver" />
  11. </bean>
  12.  
  13. <bean class="org.thymeleaf.spring3.view.ThymeleafViewResolver">
  14. <property name="templateEngine" ref="templateEngine" />
  15. <property name="characterEncoding" value="UTF-8"/>
  16. <property name="order" value="1"/>
  17. </bean>

pom.xml中:

  1. <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>

html输入示例:

  1. <h2><p th:text="#{homepage.greeting}">Welcome</p></h2>

在html文件标签内:

  1. <Meta charset="UTF-8"/>

在IntelliJ Idea中,我将项目编码设置为UTF-8,默认编码为UTF-8的属性文件

我真的不知道问题在哪里.当我将locale更改为pl时,这是输出

对不起,我还没有张贴图片.
任何帮助将不胜感激.

在web.xml中尝试过滤器,仍然没有运气.

  1. <filter>
  2. <filter-name>encodingFilter</filter-name>
  3. <filter-class>org.springframework.web.filter.CharacterEncodingFilter</filter-class>
  4. <init-param>
  5. <param-name>encoding</param-name>
  6. <param-value>UTF-8</param-value>
  7. </init-param>
  8. <init-param>
  9. <param-name>forceEncoding</param-name>
  10. <param-value>true</param-value>
  11. </init-param>
  12. </filter>
  13. <filter-mapping>
  14. <filter-name>encodingFilter</filter-name>
  15. <url-pattern>/*</url-pattern>
  16. </filter-mapping>

解决方法

好的,我想出来了这是交易:

我有以下代码

  1. <bean id="messageSource"
  2. class="org.springframework.context.support.ResourceBundleMessageSource">
  3. <property name="basename" value="messages" />
  4. </bean>

选项1:
只需添加另一个属性

  1. <property name="defaultEncoding" value="UTF-8"/>

选项二:
更改为:

  1. <bean id="messageSource"
  2. class="org.springframework.context.support.ReloadableResourceBundleMessageSource">
  3. <property name="basename" value="classpath:messages"/>
  4. <property name="defaultEncoding" value="UTF-8"/>
  5. </bean>

如果将其更改为可重新加载,请记住还要将属性值从“消息”更改为“classpath:messages”.由于某种原因,如果我没有更改它,它找不到邮件包.

猜你在找的Java相关文章