SpringBoot - UTF-8 在 messages.properties 中不起作用

新手上路,请多包涵

有什么问题?

我无法以 UTF-8 格式显示我在 messages.properties 中收到的消息。

一个例子

<h1 id="logo">Electrónico</h1>

这工作正常但是当我尝试像这样使用我的消息源时

<h1 id="logo" th:text="#{titulo.electronico}">Electrónico</h1>

我得到的是“Electr�nico”而不是 Electrónico

这是我的配置

应用程序.properties

 spring.messages.encoding=UTF-8
server.tomcat.uri-encoding=UTF-8
spring.http.encoding.charset=UTF-8
spring.thymeleaf.mode=HTML5
spring.thymeleaf.encoding=UTF-8

pom.xml

 <properties>
    <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
    <start-class>demo.Demo</start-class>
    <java.version>1.7</java.version>
</properties>

示范课

@SpringBootApplication
public class Demo {

    public static void main(String[] args) {
        SpringApplication.run(Demo.class, args);
    }
}

ServletInitializer.class

 @Configuration
public class ServletInitializer extends SpringBootServletInitializer {

    @Override
    protected SpringApplicationBuilder configure(SpringApplicationBuilder application) {
        return application.sources(Demo.class);
    }

    @Bean
    public ServletRegistrationBean h2servletRegistration() {
        ServletRegistrationBean registration = new ServletRegistrationBean(new WebServlet());
        registration.addUrlMappings("/console/*");
        return registration;
    }

    @Bean
    @Order(Ordered.HIGHEST_PRECEDENCE)
    CharacterEncodingFilter characterEncodingFilter() {
      CharacterEncodingFilter filter = new CharacterEncodingFilter();
      filter.setEncoding("UTF-8");
      filter.setForceEncoding(true);
      return filter;
    }
}

如果您需要有关我的配置的更多信息,我可以对其进行编辑。谢谢。

原文由 QoP 发布,翻译遵循 CC BY-SA 4.0 许可协议

阅读 955
2 个回答

要读取 UTF-8 编码中的任何文件,它必须在 UTF-8 之前创建。

使用一些支持编码切换的编辑器。或者使用属性文件的编码选项从 IDE 创建该文件。例如 IDEA: http ://blog.jetbrains.com/idea/2013/03/use-the-utf-8-luke-file-encodings-in-intellij-idea/

原文由 Artem Bilan 发布,翻译遵循 CC BY-SA 3.0 许可协议

就我而言,我忘记了 messageSource.setDefaultEncoding("UTF-8") ,请参阅 此处

原文由 ropo 发布,翻译遵循 CC BY-SA 4.0 许可协议

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题