SpringBoot start.aliyun.com创建项目,解决properties乱码的问题

简介: 通过确保文件和开发环境的编码一致,配置 Maven 编码,设置 Spring Boot 应用和嵌入式服务器的编码,可以有效解决 properties 文件的乱码问题。以上步骤可以帮助开发者确保在 Spring Boot 项目中正确处理和显示多语言字符,避免因编码问题导致的乱码现象。

解决 Spring Boot 项目中 properties 文件乱码问题

在使用阿里云的 start.aliyun.com 创建 Spring Boot 项目时,可能会遇到 application.properties 文件乱码的问题。这通常是由于编码问题引起的。以下是详细的解决步骤和方法,确保 properties 文件的正确读取和显示。

一、确保文件编码为 UTF-8

  1. 设置 IDE 编码

    • 确保开发环境(如 IntelliJ IDEA 或 Eclipse)的文件编码为 UTF-8。
    • 在 IntelliJ IDEA 中,设置路径为:File -> Settings -> Editor -> File Encodings,将全局编码、项目编码和属性文件编码设置为 UTF-8。
    • 在 Eclipse 中,设置路径为:Window -> Preferences -> General -> Workspace,将文本文件编码设置为 UTF-8。
  2. 确保 properties 文件编码为 UTF-8

    • 使用文本编辑器打开 application.properties 文件,并确保文件的编码为 UTF-8。可以通过记事本、Notepad++ 等工具检查和修改文件编码。

二、配置 Maven 编码

在 Maven 项目中,确保在 pom.xml 文件中配置了正确的编码。

  1. 添加资源编码配置

    <project>
        ...
        <build>
            <resources>
                <resource>
                    <directory>src/main/resources</directory>
                    <includes>
                        <include>**/*.properties</include>
                    </includes>
                    <filtering>false</filtering>
                    <encoding>UTF-8</encoding>
                </resource>
            </resources>
        </build>
        <properties>
            <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
            <project.reporting.outputEncoding>UTF-8</project.reporting.outputEncoding>
        </properties>
        ...
    </project>
    ​
    

三、Spring Boot 配置

确保 Spring Boot 应用在启动时使用 UTF-8 编码。

  1. application.properties 文件中添加编码配置

    spring.messsages.encoding=UTF-8
    ​
    
  2. 在启动类中设置默认编码

    @SpringBootApplication
    public class MyApplication {
        public static void main(String[] args) {
            System.setProperty("file.encoding", "UTF-8");
            SpringApplication.run(MyApplication.class, args);
        }
    }
    ​
    

四、Web 配置

确保 web 环境下的编码配置正确。

  1. 设置嵌入式服务器的编码

    server.tomcat.uri-encoding=UTF-8
    server.servlet.encoding.charset=UTF-8
    server.servlet.encoding.enabled=true
    server.servlet.encoding.force=true
    ​
    
  2. Spring MVC 配置

    @Configuration
    public class WebConfig implements WebMvcConfigurer {
        @Override
        public void configureMessageConverters(List<HttpMessageConverter<?>> converters) {
            StringHttpMessageConverter stringConverter = new StringHttpMessageConverter(StandardCharsets.UTF-8);
            stringConverter.setWriteAcceptCharset(false);
            converters.add(stringConverter);
        }
    }
    ​
    

思维导图

解决 Spring Boot 项目中 properties 文件乱码问题

确保文件编码为 UTF-8

设置 IDE 编码

确保 properties 文件编码

配置 Maven 编码

添加资源编码配置

Spring Boot 配置

在 application.properties 中配置

在启动类中设置编码

Web 配置

设置嵌入式服务器编码

Spring MVC 配置

总结

通过确保文件和开发环境的编码一致,配置 Maven 编码,设置 Spring Boot 应用和嵌入式服务器的编码,可以有效解决 properties 文件的乱码问题。以上步骤可以帮助开发者确保在 Spring Boot 项目中正确处理和显示多语言字符,避免因编码问题导致的乱码现象。

目录
相关文章
|
8月前
|
Java Maven Android开发
微服务——SpringBoot使用归纳——Spring Boot开发环境搭建和项目启动
本文介绍了Spring Boot开发环境的搭建和项目启动流程。主要内容包括:jdk的配置(IDEA、STS/eclipse设置方法)、Spring Boot工程的构建方式(IDEA快速构建、官方构建工具start.spring.io使用)、maven配置(本地maven路径与阿里云镜像设置)以及编码配置(IDEA和eclipse中的编码设置)。通过这些步骤,帮助开发者顺利完成Spring Boot项目的初始化和运行准备。
668 0
微服务——SpringBoot使用归纳——Spring Boot开发环境搭建和项目启动
|
7月前
|
前端开发 安全 Java
Spring Boot 便利店销售系统项目分包设计解析
本文深入解析了基于Spring Boot的便利店销售系统分包设计,通过清晰的分层架构(表现层、业务逻辑层、数据访问层等)和模块化设计,提升了代码的可维护性、复用性和扩展性。具体分包结构包括`controller`、`service`、`repository`、`entity`、`dto`、`config`和`util`等模块,职责分明,便于团队协作与功能迭代。该设计为复杂企业级应用开发提供了实践参考。
271 0
|
8月前
|
Java 测试技术 微服务
微服务——SpringBoot使用归纳——Spring Boot中的项目属性配置——少量配置信息的情形
本课主要讲解Spring Boot项目中的属性配置方法。在实际开发中,测试与生产环境的配置往往不同,因此不应将配置信息硬编码在代码中,而应使用配置文件管理,如`application.yml`。例如,在微服务架构下,可通过配置文件设置调用其他服务的地址(如订单服务端口8002),并利用`@Value`注解在代码中读取这些配置值。这种方式使项目更灵活,便于后续修改和维护。
134 0
|
8月前
|
Java 微服务 Spring
微服务——SpringBoot使用归纳——Spring Boot使用slf4j进行日志记录——使用Logger在项目中打印日志
本文介绍了如何在项目中使用Logger打印日志。通过SLF4J和Logback,可设置不同日志级别(如DEBUG、INFO、WARN、ERROR)并支持占位符输出动态信息。示例代码展示了日志在控制器中的应用,说明了日志配置对问题排查的重要性。附课程源码下载链接供实践参考。
949 0
|
4月前
|
JSON 分布式计算 大数据
springboot项目集成大数据第三方dolphinscheduler调度器
springboot项目集成大数据第三方dolphinscheduler调度器
240 3
|
4月前
|
Java 关系型数据库 数据库连接
Spring Boot项目集成MyBatis Plus操作PostgreSQL全解析
集成 Spring Boot、PostgreSQL 和 MyBatis Plus 的步骤与 MyBatis 类似,只不过在 MyBatis Plus 中提供了更多的便利功能,如自动生成 SQL、分页查询、Wrapper 查询等。
364 3
|
4月前
|
Java 关系型数据库 MySQL
springboot项目集成dolphinscheduler调度器 实现datax数据同步任务
springboot项目集成dolphinscheduler调度器 实现datax数据同步任务
496 2
|
4月前
|
分布式计算 Java 大数据
springboot项目集成dolphinscheduler调度器 可拖拽spark任务管理
springboot项目集成dolphinscheduler调度器 可拖拽spark任务管理
261 2
|
4月前
|
Java 测试技术 Spring
简单学Spring Boot | 博客项目的测试
本内容介绍了基于Spring Boot的博客项目测试实践,重点在于通过测试驱动开发(TDD)优化服务层代码,提升代码质量和功能可靠性。案例详细展示了如何为PostService类编写测试用例、运行测试并根据反馈优化功能代码,包括两次优化过程。通过TDD流程,确保每项功能经过严格验证,增强代码可维护性与系统稳定性。
207 0
|
4月前
|
存储 Java 数据库连接
简单学Spring Boot | 博客项目的三层架构重构
本案例通过采用三层架构(数据访问层、业务逻辑层、表现层)重构项目,解决了集中式开发导致的代码臃肿问题。各层职责清晰,结合依赖注入实现解耦,提升了系统的可维护性、可测试性和可扩展性,为后续接入真实数据库奠定基础。
384 0