SpringBoot-UTF-8在messages.properties中不起作用 [英] SpringBoot - UTF-8 Doesnt work in messages.properties

查看:426
本文介绍了SpringBoot-UTF-8在messages.properties中不起作用的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

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

I can't display in UTF-8 the messages I got in messages.properties.

一个例子

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

这可以,但是当我尝试使用这样的消息源时

this works okay but when I try to use my message source like this

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

我得到的是"Electr.nico",而不是Electrónico

I get "Electr�nico" instead of Electrónico

这是我的配置

application.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;
    }
}

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

If you need more information about my configuration I can edit it. Thanks.

推荐答案

要读取UTF-8编码的任何文件,必须先在UTF-8中创建该文件.

To read any file in the UTF-8 encoding it must be created in the UTF-8 before.

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

Use some editor which supports encoding switching. Or create that file from IDE with encoding option for properties files. E.g. IDEA: http://blog.jetbrains.com/idea/2013/03/use-the-utf-8-luke-file-encodings-in-intellij-idea/

这篇关于SpringBoot-UTF-8在messages.properties中不起作用的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆