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

目录
相关文章
|
6月前
|
Java 关系型数据库 MySQL
Spring Boot自动配置:魔法背后的秘密
Spring Boot 自动配置揭秘:只需简单配置即可启动项目,背后依赖“约定大于配置”与条件化装配。核心在于 `@EnableAutoConfiguration` 注解与 `@Conditional` 系列条件判断,通过 `spring.factories` 或 `AutoConfiguration.imports` 加载配置类,实现按需自动装配 Bean。
|
6月前
|
人工智能 Java 开发者
【Spring】原理解析:Spring Boot 自动配置
Spring Boot通过“约定优于配置”的设计理念,自动检测项目依赖并根据这些依赖自动装配相应的Bean,从而解放开发者从繁琐的配置工作中解脱出来,专注于业务逻辑实现。
2360 0
|
5月前
|
前端开发 Java 应用服务中间件
《深入理解Spring》 Spring Boot——约定优于配置的革命者
Spring Boot基于“约定优于配置”理念,通过自动配置、起步依赖、嵌入式容器和Actuator四大特性,简化Spring应用的开发与部署,提升效率,降低门槛,成为现代Java开发的事实标准。
|
5月前
|
JavaScript Java Maven
【SpringBoot(二)】带你认识Yaml配置文件类型、SpringMVC的资源访问路径 和 静态资源配置的原理!
SpringBoot专栏第二章,从本章开始正式进入SpringBoot的WEB阶段开发,本章先带你认识yaml配置文件和资源的路径配置原理,以方便在后面的文章中打下基础
532 4
|
6月前
|
缓存 Java 应用服务中间件
Spring Boot配置优化:Tomcat+数据库+缓存+日志,全场景教程
本文详解Spring Boot十大核心配置优化技巧,涵盖Tomcat连接池、数据库连接池、Jackson时区、日志管理、缓存策略、异步线程池等关键配置,结合代码示例与通俗解释,助你轻松掌握高并发场景下的性能调优方法,适用于实际项目落地。
1147 5
|
6月前
|
传感器 Java 数据库
探索Spring Boot的@Conditional注解的上下文配置
Spring Boot 的 `@Conditional` 注解可根据不同条件动态控制 Bean 的加载,提升应用的灵活性与可配置性。本文深入解析其用法与优势,并结合实例展示如何通过自定义条件类实现环境适配的智能配置。
358 0
探索Spring Boot的@Conditional注解的上下文配置
|
JSON 前端开发 Java
SpringBoot 如何进行参数校验
在SprinBoot中如何集成参数校验Validator,以及参数校验的高阶技巧
326 1
SpringBoot 如何进行参数校验
|
Java 数据库连接
SpringBoot 2.0参数校验Hibernate Validator
SpringBoot 2.0参数校验Hibernate Validator
SpringBoot 2.0参数校验Hibernate Validator
|
Java Spring
SpringBoot 开发秘籍 - 整合参数校验
对于web服务来说,为防止非法参数对业务造成影响,在Controller层一定要对参数进行校验!本章我们以SpringBoot项目为例,介绍参数校验的基本用法以及一些高级技巧,希望能对你有所帮助。
312 0
SpringBoot 开发秘籍 - 整合参数校验

热门文章

最新文章