springboot中的配置文件绑定
时间:2020-01-09
本文章向大家介绍springboot中的配置文件绑定,主要包括springboot中的配置文件绑定使用实例、应用技巧、基本知识点总结和需要注意事项,具有一定的参考价值,需要的朋友可以参考一下。
先创建一个peron类,然后需要注解configurationProperties(prefix ="person")
然后需要加一个@component
因为只有在springboot的容器才能提供容器提供的@configurationProperties
@Component @ConfigurationProperties(prefix = "person") public class Person { private String lastName; private Integer age; private boolean boss; private Date birth; private Map<String,Object> maps; private List<Object> lists; private Dog dog; public String getLastName() { return lastName; } public void setLastName(String lastName) { this.lastName = lastName; } public Integer getAge() { return age; } public void setAge(Integer age) { this.age = age; } public boolean isBoss() { return boss; } public void setBoss(boolean boss) { this.boss = boss; } public Date getBirth() { return birth; } public void setBirth(Date birth) { this.birth = birth; } public Map<String, Object> getMaps() { return maps; } public void setMaps(Map<String, Object> maps) { this.maps = maps; } public List<Object> getLists() { return lists; } public void setLists(List<Object> lists) { this.lists = lists; } public Dog getDog() { return dog; } public void setDog(Dog dog) { this.dog = dog; } @Override public String toString() { return "Person [lastName=" + lastName + ", age=" + age + ", boss=" + boss + ", birth=" + birth + ", maps=" + maps + ", lists=" + lists + ", dog=" + dog + "]"; } }
dog类
public class Dog { private String Name; private Integer age; public String getName() { return Name; } public void setName(String name) { Name = name; } public Integer getAge() { return age; } public void setAge(Integer age) { this.age = age; } @Override public String toString() { return "Dog [Name=" + Name + ", age=" + age + "]"; } }
写完后,ide会提示需要在pom.xml中导入组件处理器。
<!-- 配置文件的处理器 ,配置文件进行绑定就会有提示--> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-configuration-processor</artifactId> <optional>true</optional> </dependency> </dependencies>
然后创建配置文件,有两种方式,一个时yml文件,另一个时properties
1,application.yml
person: last-name: zhangsan age: 24 boss: false birth: 2017/12/5 maps: {k1: v1,k2: v2} lists: [lisi, zhangsan] dog: Name: xiaohei age: 4
2.application.properties
中文字,在eclipse中自动转为unicode码
person.age=24 person.last-name=\u5F20\u4E09 person.birth=2000/1/1 person.boss=false person.maps.k1=value1 person.maps.k2=12 person.dog.name=\u5C0F\u9ED1 person.dog.age=2
在test中使用spring boot的单元测试
@RunWith(SpringRunner.class) @SpringBootTest class Helloworld01QuickApplicationTests { @Autowired Person person; @Test void contextLoads() { System.out.println(person); } }
运行,会看到得到配置文件中的数据
原文地址:https://www.cnblogs.com/hamish26/p/12171877.html
- 《笨办法学Python》 第3课手记
- NGS基础 - 参考基因组和基因注释文件
- 关于Android PullTorefreshScrollview回到顶部实例
- 《笨办法学Python》 第2课手记
- 《笨办法学Python》 第1课手记
- 《笨办法学Python》 第40课手记
- 很经典的GDB调试命令,包括查看变量,查看内存
- 《笨办法学Python》 第39课手记
- 《笨办法学Python》 第38课手记
- 01背包及其变种(物品无限背包、恰好装满背包)
- 《笨办法学Python》 第35课手记
- github pages + Hexo + 域名绑定搭建个人博客增强版
- 责任链模式
- 《笨办法学Python》 第33课手记
- java教程
- Java快速入门
- Java 开发环境配置
- Java基本语法
- Java 对象和类
- Java 基本数据类型
- Java 变量类型
- Java 修饰符
- Java 运算符
- Java 循环结构
- Java 分支结构
- Java Number类
- Java Character类
- Java String类
- Java StringBuffer和StringBuilder类
- Java 数组
- Java 日期时间
- Java 正则表达式
- Java 方法
- Java 流(Stream)、文件(File)和IO
- Java 异常处理
- Java 继承
- Java 重写(Override)与重载(Overload)
- Java 多态
- Java 抽象类
- Java 封装
- Java 接口
- Java 包(package)
- Java 数据结构
- Java 集合框架
- Java 泛型
- Java 序列化
- Java 网络编程
- Java 发送邮件
- Java 多线程编程
- Java Applet基础
- Java 文档注释
- python函数——Keras分词器Tokenizer
- python函数——序列预处理pad_sequences()序列填充
- MapReduce工作笔记——Streaming多路输出
- nuxt.js项目入门配置篇
- 高级综合工具StratusHLS学习笔记(4)
- 论文笔记&翻译——Enhanced LSTM for Natural Language Inference(ESIM)
- Day 5:用两个栈实现队列
- C++核心准则T.42:使用模板别名简化记法并隐藏实现细节
- Python实战——ESIM 模型搭建(keras版)
- MapReduce工作笔记——Job调度参数设置
- 矩阵操作试题(C++/Python)——矩阵元素逆时针旋转90度(升级版)
- Macdown中[toc]无法生成目录解决方法
- Linux实用技巧——mkdir创建多级新目录
- C++核心准则T.43: 定义别名时,using比typedef更好
- C++核心准则T.44:使用函数模板推断类模板参数类型(如果可能)