创建前缀一样的文件_SpringBoot:配置文件属性读取
SpringBoot中默认加载的是application.properties或者application.yaml文件,当然也支持自定义的属性文件。我们可以在此文件中写一些自己想要的配置信息,然后在用的地方读取。
默认属性文件
在application.properties文件中添加配置信息,如下:
my.name=蜗牛my.age=30
使用@Value 读取
@RestControllerpublic class PropertiesReadController { //${}中的key一定要对应正确 @Value("${my.name}") private String name; @Value("${my.age}") private Integer age; @RequestMapping(value = "/hello", method= RequestMethod.GET) public String hello(){ return "hello, name:" + name+" age:"+age; }}
启动服务,访问localhost:8080/hello 可以看到返回信息
对于属性值比较少的情况,我们使用@Value注解来获取也还是比较方便的,但是当配置的属性值比较多时,代码中到处写读取值的,显得不是很优雅。
使用@ConfigurationProperties 读取
修改application.properties文件,添加如下配置信息
jdbc.driver=com.mysql.jdbc.Driverjdbc.url=localhost:3306/testjdbc.username=rootjdbc.password=123456
创建一个接收配置信息的对象
@Component//指定要读取的信息的前缀@ConfigurationProperties(prefix = "jdbc")public class JdbcProperties { private String driver; private String url; private String username; private String password; // 省略get 和 set方法}
通过@ConfigurationProperties 注解和 prefix属性我们指定了当前类要读取的配置信息,通过@Component 注解将当前对象交给spring管理,在我们需要的地方就可以注入使用;
@RestControllerpublic class PropertiesReadController { @Autowired private JdbcProperties jdbcProperties; @RequestMapping(value = "/jdbc", method= RequestMethod.GET) public String helloJdbc(){ //打印输出读取的信息 System.out.println("driver:"+jdbcProperties.getDriver()); System.out.println("url:"+jdbcProperties.getUrl()); System.out.println("username:"+jdbcProperties.getUsername()); System.out.println("password:"+jdbcProperties.getPassword()); return "hello jdbc"; }}
请求当前方法,可以看到控制台打印的信息
自定义属性文件
前边也说到了,默认读取的是application.properties或者application.yaml文件中的内容,我们也可以指定读取自己定义的配置文件中的内容。
在resources目录下创建jdbc.properties文件,并写入内容,如下:
my.jdbc.driver=com.mysql.jdbc.Drivermy.jdbc.url=localhost:3306/testmy.jdbc.username=rootmy.jdbc.password=123456
修改上边的JdbcProperties类
@Component//指定要读取的信息的前缀@ConfigurationProperties(prefix = "my.jdbc")@PropertySource(value="classpath:jdbc.properties")public class JdbcProperties { private String driver; private String url; private String username; private String password; // 省略 get 和 set 方法}
通过@PropertySource 注解的value 来指定当前要读取的属性所在的配置文件,访问后同样可以得到配置信息。
点击关注,后期更多精彩内容呈上!
创建前缀一样的文件_SpringBoot:配置文件属性读取相关推荐
- JAVA基础初探(十二)Map接口及其常用实现类(HashMap)、File类详解(概述、创建、删除、重命名、文件属性读取/设置、遍历文件夹)
该篇博客目录 1.Map接口及其常用实现类(HashMap.Hashtable) 2.File类(概述.创建.删除.重命名.文件属性读取/设置.遍历文件夹) 一.Map接口及其常用实现类(HashMa ...
- 创建前缀一样的文件_Win10更快速创建或重命名仅扩展名文件
IT之家2月26日消息 在Windows 10 19H1和20H1预览版本中,微软在文件资源管理器中添加了一项新功能,允许用户更快更方便地创建和重命名仅扩展名文件. Windows 10版本1903/ ...
- springboot读取json文件_SpringBoot:配置文件属性读取
SpringBoot中默认加载的是application.properties或者application.yaml文件,当然也支持自定义的属性文件.我们可以在此文件中写一些自己想要的配置信息,然后在用 ...
- VS Code 配置调试参数、launch.json 配置文件属性、task.json 变量替换、自动保存并格式化、空格和制表符、函数调用关系、文件搜索和全局搜索、
1. 生成配置参数 对于大多数的调试都需要在当前项目目录下创建一个 lanch.json 文件,位置是在当前项目目录下生成一个 .vscode 的隐藏文件夹,在里面放置一些配置内容,比如:settin ...
- pycharm python 模板配置_windows下pycharm安装、创建文件、配置默认模板
本文为大家分享了windows下pycharm安装.创建文件.配置默认模板的具体步骤,供大家参考,具体内容如下 步骤: 下包 -->安装-->创建文件-->定制模板 一.下包 官方地 ...
- mybatis配置文件属性的详解和db.propertis文件的使用
Mybatis核心配置文件SqlMapConfig.xml配置 核心配置文件中标签的顺序如下图所示: 1.properties(属性): 将核心配置文件的某些属性(连接池的四大基本属性),可以在外部的 ...
- idea如何配置或者创建mybatis的xml文件 idea如何配置或者创建mybatis的配置文件
文章目录 问题 解决问题 打开设置面板 输入配置信息 创建mybatis的xml文件 问题 今天使用idea去创建userMapper.xml文件时,发现没有新建xml文件选项,如下图所示: 解决问题 ...
- 用neo4j导入protege创建的本体owl文件(以及前缀消除)
用neo4j导入protege创建的本体owl文件(以及前缀消除) 前期工作 导入owl本体文件 前期工作 这是我用protege自己弄的一个简单的本体(展示一下) 1.下载扩展neosemantic ...
- Redis 中的 持久化 RDB持久化 SAVE:阻塞服务器并创建RDB文件 BGSAVE:以非阻塞方式创建RDB文件 通过配置选项自动创建RDB文件
这里写目录标题 15.1 RDB持久化 15.1.1 SAVE:阻塞服务器并创建RDB文件 其他信息 15.1.2 BGSAVE:以非阻塞方式创建RDB文件 其他信息 15.1.3 通过配置选项自动创 ...
最新文章
- 解决GeoTools中CQL解析中文字段名的问题
- 机器学习(一)梯度下降算法
- Spring JMS,消息自动转换,JMS模板
- 扎心!全国6.5亿网民月收入不足5000元
- 【转载】Linux安装nginx
- 来自Google的面试题,真的有趣!果然与众不同
- hdu1312---------------DFS模板(调用STL)
- 聊聊 Material Design 里,阴影的那些事儿!
- jd反编译java_java反编译工具jd
- 微信驾校服务平台功能开发
- 求两个数最大公因数的c语言程序
- 完美卸载office
- WSTMart 视频教程,WSTMart 开发文档
- eclipse简单导入xtend项目
- Tomcat 何时解压war包
- 防疫与复工同行,长沙望城进入“双统筹”的关键时刻
- 传输媒体、表示媒体、感觉媒体、表现媒体的区别
- 2022双十一买什么好?行家推荐四大最值得入手的数码好物
- 人工智能和python毕业设计题目_Python与人工智能-中国大学mooc-题库零氪
- 《演说之禅》I amp; II 读书笔记
热门文章
- php task todolist,Todolist--(4)登录
- win8 oracle10g,win7/win8 下安装oracle10g的方法
- python函数type的用意_python中type()是什么意思
- matplotlib调节colorbar的大小
- OpenCV学习笔记(一):Win10(x64)+Qt5.8(MSVC2013)+OpenCV3.1.0配置过程
- Django中间件与python日志模块 介绍
- 数字图像处理 第二章 图像处理基础
- tensorflow实现反卷积
- mousemove事件java,three.js,补间相机和mousemove事件
- 令牌桶 限速_Go 限流器实战系列(2) Token Bucket 令牌桶