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

目录
相关文章
|
24天前
|
Java API 数据库
Spring Boot框架因其简洁的配置、快速的启动特性及丰富的功能集而备受开发者青睐
本文通过在线图书管理系统案例,详细介绍如何使用Spring Boot构建RESTful API。从项目基础环境搭建、实体类与数据访问层定义,到业务逻辑实现和控制器编写,逐步展示了Spring Boot的简洁配置和强大功能。最后,通过Postman测试API,并介绍了如何添加安全性和异常处理,确保API的稳定性和安全性。
32 0
|
17天前
|
Java API Spring
在 Spring 配置文件中配置 Filter 的步骤
【10月更文挑战第21天】在 Spring 配置文件中配置 Filter 是实现请求过滤的重要手段。通过合理的配置,可以灵活地对请求进行处理,满足各种应用需求。还可以根据具体的项目要求和实际情况,进一步深入研究和优化 Filter 的配置,以提高应用的性能和安全性。
|
4天前
|
缓存 IDE Java
SpringBoot入门(7)- 配置热部署devtools工具
SpringBoot入门(7)- 配置热部署devtools工具
14 2
 SpringBoot入门(7)- 配置热部署devtools工具
|
3天前
|
Java 数据库连接
SpringBoot配置多数据源实战
第四届光学与机器视觉国际学术会议(ICOMV 2025) 2025 4th International Conference on Optics and Machine Vision
23 8
|
9天前
|
Java Spring
[Spring]aop的配置与使用
本文介绍了AOP(面向切面编程)的基本概念和核心思想。AOP是Spring框架的核心功能之一,通过动态代理在不修改原代码的情况下注入新功能。文章详细解释了连接点、切入点、通知、切面等关键概念,并列举了前置通知、后置通知、最终通知、异常通知和环绕通知五种通知类型。
21 1
|
12天前
|
Java Spring 容器
SpringBoot读取配置文件的6种方式,包括:通过Environment、@PropertySource、@ConfigurationProperties、@Value读取配置信息
SpringBoot读取配置文件的6种方式,包括:通过Environment、@PropertySource、@ConfigurationProperties、@Value读取配置信息
36 3
|
23天前
|
druid Java Maven
|
2月前
|
消息中间件 NoSQL 安全
(转)Spring Boot加载 不同位置的 application.properties配置文件顺序规则
这篇文章介绍了Spring Boot加载配置文件的顺序规则,包括不同位置的application.properties文件的加载优先级,以及如何通过命令行参数或环境变量来指定配置文件的名称和位置。
|
6月前
|
Java 容器 Spring
Spring的加载配置文件、容器和获取bean的方式
Spring的加载配置文件、容器和获取bean的方式
51 3
Spring的加载配置文件、容器和获取bean的方式
|
XML Java 数据格式
Spring源码深度解析01-debug式看如何加载xml配置文件
Spring源码深度解析01-debug式看如何加载xml配置文件
148 0