前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >spring boot读取配置文件——获取配置参数

spring boot读取配置文件——获取配置参数

作者头像
jiankang666
发布2022-05-12 21:38:42
1K0
发布2022-05-12 21:38:42
举报
文章被收录于专栏:java基础笔记

一、背景

工作中经常会有一些参数需要配置,同时在代码里面需要用到,所有就需要配置类读取,然后在使用的时候注入该类进行获取相关参数。前面实现了spring boot相关的下面内容,现在就来实现一下spring boot如何读取配置文件里面的参数。参考项目地址在文末。

(1)spring boot 2以上版本整合mybatis

(2)实现启动项目时数据库表初始化,基于注解实现mybatis查询

(3)mybatis基于pagehelper插件实现分页功能

二、实现

1、在项目resources里面新建一个properties文件,保存需要用到的参数
代码语言:javascript
复制
com.name=jiankang
com.phone=18438595560
com.language=java
2、在启动类所在目录新建一个config文件夹,并新建ResourceConfig类,如下。

(1)配置类需要加@Configuration注解,声明是配置类

(2)@PropertySource注解设置properities文件所在路径

(3)变量上面的@Value注解设置对应的属性变量,冒号左边是映射的属性文件中的键,冒号右边时当找不到属性值时赋默认值。

(4)配置类省略getset方法。

代码语言:javascript
复制
@Configuration
@PropertySource(value="classpath:resource.properties")
public class ResourceConfig {


    @Value("${com.name:jiankang}")
    private String name;

    @Value("${com.phone:111}")
    private String phone;

    @Value("${language:python}")
    private String language;

    @Value("${com.address:chinese}")
    private String address;

}
3、假如觉得@value注解上的键com.xxx太长,可以这样配置

(1)使用@ConfigurationProperties注解,配置一下属性变量的前缀,@Value注解里面就不用写太长了。

(2)配置类省略getset方法。

代码语言:javascript
复制
@Configuration
@ConfigurationProperties(prefix = "com")
@PropertySource(value="classpath:resource.properties")
public class ResourceConfig {


    @Value("${name:jiankang}")
    private String name;

    @Value("${phone:111}")
    private String phone;

    @Value("${language:python}")
    private String language;

    @Value("${address:chinese}")
    private String address;

}
4、Controller类里面获取配置参数。

(1)通过@Autowired注入配置类

代码语言:javascript
复制
@RestController
public class HelloController {


    @Autowired
    private ResourceConfig resourceConfig;

    @RequestMapping("/resource")
    @ResponseBody
    public HashMap getA()
    {
        HashMap map = new HashMap();
        map.put("com.name", resourceConfig.getName());
        map.put("com.phone", resourceConfig.getPhone());
        map.put("com.language", resourceConfig.getLanguage());
        map.put("com.address", resourceConfig.getAddress());
        return map;
    }

}
5、返回结果如下。

(1)结果可以看出,address配置文件里面没有该值,返回了@Value注解配置的默认值。

代码语言:javascript
复制
{
    "com.language":"java",
    "com.name":"jiankang",
    "com.phone":"18438595560",
    "com.address":"chinese"
}

三、总结

以上就是实现mybatis基于pagehelper插件实现分页功能所有内容,希望能够帮到大家,可以git下载下来,参考一下,下面地址,切换到duqv-peizhi分支

https://github.com/xujiankang6/spring-boot-research.git

本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2021-09-23,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 java基础笔记 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 一、背景
  • 二、实现
    • 1、在项目resources里面新建一个properties文件,保存需要用到的参数
      • 2、在启动类所在目录新建一个config文件夹,并新建ResourceConfig类,如下。
        • 3、假如觉得@value注解上的键com.xxx太长,可以这样配置
          • 4、Controller类里面获取配置参数。
            • 5、返回结果如下。
            • 三、总结
            领券
            问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档