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

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

目录

一、背景

二、实现

三、总结

一、背景

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


(1) spring boot整合mybatis

(2)基于注解实现mybatis查询

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


二、实现

1、在项目resources里面新建一个properties文件,保存需要用到的参数

com.name=jiankang
com.phone=18438595560
com.language=java

2、在启动类所在目录新建一个config文件夹,并新建ResourceConfig类,如下。


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


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


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


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

@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方法。

@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注入配置类

@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注解配置的默认值。

{
    "com.language":"java",
    "com.name":"jiankang",
    "com.phone":"18438595560",
    "com.address":"chinese"
}

三、总结

       以上就是实现mybatis基于pagehelper插件实现分页功能所有内容,希望能够帮到大家,可以git下载下来,参考一下,下面地址,切换到duqv-peizhi分支,觉得不错的话,欢迎微信搜索关注java基础笔记,后面会不断更新相关知识,大家一起进步。  

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

目录
相关文章
|
1月前
|
Java 开发者 微服务
手写模拟Spring Boot自动配置功能
【11月更文挑战第19天】随着微服务架构的兴起,Spring Boot作为一种快速开发框架,因其简化了Spring应用的初始搭建和开发过程,受到了广大开发者的青睐。自动配置作为Spring Boot的核心特性之一,大大减少了手动配置的工作量,提高了开发效率。
50 0
|
1天前
|
NoSQL Java Redis
Spring Boot 自动配置机制:从原理到自定义
Spring Boot 的自动配置机制通过 `spring.factories` 文件和 `@EnableAutoConfiguration` 注解,根据类路径中的依赖和条件注解自动配置所需的 Bean,大大简化了开发过程。本文深入探讨了自动配置的原理、条件化配置、自定义自动配置以及实际应用案例,帮助开发者更好地理解和利用这一强大特性。
28 14
|
23天前
|
缓存 IDE Java
SpringBoot入门(7)- 配置热部署devtools工具
SpringBoot入门(7)- 配置热部署devtools工具
41 1
SpringBoot入门(7)- 配置热部署devtools工具
|
1月前
|
缓存 IDE Java
SpringBoot入门(7)- 配置热部署devtools工具
SpringBoot入门(7)- 配置热部署devtools工具
43 2
 SpringBoot入门(7)- 配置热部署devtools工具
|
25天前
|
存储 前端开发 JavaScript
springboot中路径默认配置与重定向/转发所存在的域对象
Spring Boot 提供了简便的路径默认配置和强大的重定向/转发机制,通过合理使用这些功能,可以实现灵活的请求处理和数据传递。理解并掌握不同域对象的生命周期和使用场景,是构建高效、健壮 Web 应用的关键。通过上述详细介绍和示例,相信读者能够更好地应用这些知识,优化自己的 Spring Boot 应用。
27 3
|
1月前
|
Java 数据库连接
SpringBoot配置多数据源实战
第四届光学与机器视觉国际学术会议(ICOMV 2025) 2025 4th International Conference on Optics and Machine Vision
58 8
|
1月前
|
Java 数据库连接 数据库
springboot启动配置文件-bootstrap.yml常用基本配置
以上是一些常用的基本配置项,在实际应用中可能会根据需求有所变化。通过合理配置 `bootstrap.yml`文件,可以确保应用程序在启动阶段加载正确的配置,并顺利启动运行。
96 2
|
SQL 关系型数据库 MySQL
SpringBoot自定义配置注入的方式:自定义配置文件注入,从mysql读取配置进行注入
SpringBoot自定义配置注入的方式:自定义配置文件注入,从mysql读取配置进行注入
316 0
|
7月前
|
Java 数据库连接 Maven
SpringBoot【付诸实践 01】SpringBoot自定义starter保姆级教程(说明+源码+配置+测试)
SpringBoot【付诸实践 01】SpringBoot自定义starter保姆级教程(说明+源码+配置+测试)
74 1
|
7月前
|
Java 数据库连接 Spring
面试题:springboot的自定义配置有哪些
面试题:springboot的自定义配置有哪些
49 0