相关疑难解决方法(0)

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

有什么问题?

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

一个例子

<h1 id="logo">Electrónico</h1>
Run Code Online (Sandbox Code Playgroud)

这工作没问题但是当我尝试使用这样的消息源时

<h1 id="logo" th:text="#{titulo.electronico}">Electrónico</h1>
Run Code Online (Sandbox Code Playgroud)

我得到"Electr nico"而不是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
Run Code Online (Sandbox Code Playgroud)

的pom.xml

<properties>
    <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
    <start-class>demo.Demo</start-class>
    <java.version>1.7</java.version>
</properties>
Run Code Online (Sandbox Code Playgroud)

演示课

@SpringBootApplication
public class Demo {

    public static void main(String[] args) {
        SpringApplication.run(Demo.class, args);
    }
}
Run Code Online (Sandbox Code Playgroud)

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 = …
Run Code Online (Sandbox Code Playgroud)

spring utf-8 thymeleaf

16
推荐指数
4
解决办法
2万
查看次数

标签 统计

spring ×1

thymeleaf ×1

utf-8 ×1