读取配置文件 Spring的@Value 和properties的使用

小白一个, 记录工作中的点滴 . 

读取配置文件基本上就是将开发中常用的一些常量放到配置文件中 ,这样方便后期修改配置文件 ,不用来回的动代码.

 

Spring3.x以后通过@Value("${key值}"),获取配置文件中key对用的value,非常方便

比如:配置文件中 name=wangxiaoming;

代码中就要这样: 
@value("${name}")

public String name;

@value("${user.dir}") // 可以获取系统变量, 具体值变量百度都能找到

public String path;

注意 ,不要使用 static , final ,去修饰,否则会得到null值.  

配置文件的路径使用@Value也可以配置 , 具体还请自行百度, 

 

我个人比较倾向于使用properties;

上代码:

import java.io.InputStream;
import java.util.Properties;

import org.apache.log4j.Logger;

/**
 * 系统常量
 *
 * @author IT
 */
public class SysConstants {


    public static final Logger logger = Logger.getLogger(SysConstants.class);
    public static String HOST = null;
    public static String PORT = null;

    /** * 初始化 */
    static {
        Properties prop = new Properties();
        try {            
            // 获取数据流
            InputStream inputStream = SysConstants.class.getClassLoader().getResourceAsStream("config.properties");
            prop.load(inputStream);
        } catch (Exception e) {
            e.printStackTrace();
            logger.debug(e.toString() + "读取配置文件出错!");
        }
        HOST = prop.getProperty("sysConstant.host");
        PORT = prop.getProperty("sysConstant.port");

    }


}

很简单 ,很明了,我就不多加解释了.使用过程中直接使用

SysConstants.HOST 和SysConstants.PORT 的方式就能直接调取到.配置文件中的数值

 

-------------------------------------------------------------------------------------------------------------------

我喜欢properties的原因其实就是因为他可以在main方法下调试 ,spring 的注解我还得启动下项目springboot项目/流泪

不过这种方式多了配置文件了, 所以各取所需吧.

现在springboot有@Properties 注解了, 现在也很方便了.

 

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值