zoukankan      html  css  js  c++  java
  • springboot读取自定义配置文件及乱码问题

    首先在 resources 目录下自定义一个配置文件

    如sms.properties

    #短信平台相关
    mall.sms.regionId=ch-hangzhou
    mall.sms.accessKeyId=*********
    mall.sms.accessKeySecret=**********
    mall.sms.product=Dysmsapi
    mall.sms.domain=dysmsapi.aliyuncs.com
    mall.sms.timeout=1000
    mall.sms.signName=静安国际万国荟公园
    mall.sms.templateCode=SMS_150172034
    mall.sms.templateParam={"code":"@code@"}
    mall.sms.verify.timeout=600

    在需要用到此配置的类上加上注解  @PropertySource

    @Service
    @Slf4j
    @PropertySource(value="classpath:sms.properties",encoding = "utf-8")
    public class SmsService {
    
        @Autowired
        private RedisManager redisManager;
    
        @Value("${mall.sms.signName}")
        private String signName;
        @Value("${mall.sms.templateCode}")
        private String templateCode;
        @Value("${mall.sms.templateParam}")
        private String templateParam;
        @Value("${mall.sms.verify.timeout}")
        private long timeout;
    }

    @PropertySource注解中 value 的取值为 classpath:配置文件名称

    最后有两点需要注意造成乱码的情况:

    首先:需要注意properties文件的格式应该设为utf-8
    然后读取配置文件时 @PropertySource不仅需要加上value属性,还需要设置
    encoding为utf-8
    引用配置的类需要添加spring可识别的注解,将此类交给spring管理
  • 相关阅读:
    Java 多态
    HDFS读写原理
    HDFS详解
    Servlet基础
    Tomcat
    HTTP简介
    JDBC技术
    final、finally和finalize
    java 中的权限修饰符
    进程、线程、线程状态、多线程实现方法
  • 原文地址:https://www.cnblogs.com/yunian139/p/11868460.html
Copyright © 2011-2022 走看看