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

时间: 2024-10-02 22:01:54

springboot中的配置文件绑定的相关文章

关于springboot中的配置文件小知识

springboot中可以有多个配置文件,配置文件可以是.properties或则yml结尾的文件,并且配置文件有优先级,相同种类的配置application.properties 的优先级比较高,不同种类配置同时都会生效. 也可以自定义配置文件,随意命名,但是后缀名必须按照要求来!后台也可以通过@Value(“${key}”)注解来绑定值到属性: 原文地址:https://www.cnblogs.com/ljl5921/p/11801569.html

springboot中读取配置文件@Value和@Configuration

[email protected] package com.xgcd.springboot.bean; import org.springframework.boot.context.properties.ConfigurationProperties; import org.springframework.context.annotation.PropertySource; import org.springframework.stereotype.Component; import java

Springboot 中的配置文件

Spring Boot提供了两种常用的配置文件,分别是properties文件和yml文件.他们的作用都是修改Spring Boot自动配置的默认值. 技术:yaml.properties语法,ConfigurationProperties和Value注解的使用,配置文件占位符的使用 一.YAML简介 yml是YAML(YAML Ain't Markup Language)语言的文件,以数据为中心,比json.xml等更适合做配置文件 yml和xml相比,少了一些结构化的代码,使数据更直接,一目

SpringBoot 中从yml配置文件中读取常用的参数值

SpringBoot现在基本上都是使用application-XXX.yml(生产环境为pro,开发测试环境为dev)来配置项目中的一些配置条件,在springboot中还可以通过从yml文件中将yml中的数据直接读取出来. 1.yml文件(这里设置参数的时候往往设置两层前缀,避免在调用的时候该属性中的部分参数名与计算机中的某些名字冲突) test: person: lastName: hello age: 18 boss: false birth: 2017/12/12 maps: {k1:

springboot中配置文件使用1

1.表达方式:application.properties或者application.yml,这是已经约定成俗的文件,不用修改文件名,此文件为全局配置文件. 2.语法格式:yml或者yaml. a.基本语法: k:(空格)v  :表示一对键值对(空格必须有): 以空格的缩进来控制层级关系,只要是左对齐的一列数据,都是同一层级的:如: server: port: 8081 path: /hello 属性和值也是大小写敏感: b.值得写法: 字面量: 普通的值(数字,字符串,布尔) k: v  :字

SpringBoot中的@ConfigurationProperties

有什么用 该注解的作用类似于@Value,即为组件中的属性进行赋值. 怎么用 首先是建立一个springboot的工程,不再赘述. 首先我们建立一个Person类和一个Dog类. package com.helius.springboot.bean; @Component //加上它,即成为ioc容器中的一个组件 @ConfigurationProperties(prefix = "person") public class Person { private String lastNa

linux中多网卡绑定

linux中多网卡绑定 实验背景: (1)虚拟机系统:Centos6.7 (2)两张网卡 网卡绑定应用: 为了提供网络的高可用性,我们可能需要将多块网卡绑定成一块虚拟网卡对外提供服务,这样即使其中的一块物理网卡出现故障,也不会导致连接中断.比如我们可以将eth0和eth1绑定成虚拟网卡bond0. 实验步骤: (1)在/etc/sysconfig/network-scripts/下创建虚拟网卡bond0的配置文件ifcfg-bond0,命令如下: [[email protected] ~]# c

SpringBoot中使用Spring Data Jpa 实现简单的动态查询的两种方法

首先谢谢大佬的简书文章:http://www.jianshu.com/p/45ad65690e33# 这篇文章中讲的是spring中使用spring data jpa,使用了xml配置文件.我现在使用的是spring boot ,没有了xml文件配置就方便多了.我同样尝试了两种方式,也都是简单的查询,需要更复杂的查询,还需要我研究研究.往下看,需要先配置springboot的开发环境,需要大致了解springboot,这里可以看下面两篇文章: springboot 项目新建 springboot

SpringBoot 使用(三): 配置文件详解

代码从开发到测试要经过各种环境,开发环境,测试环境,demo环境,线上环境,各种环境的配置都不一样,同时要方便各种角色如运维,接口测试, 功能测试,全链路测试的配置,hardcode 肯定不合适,如Spring profile一样写在jar包不合适.分布式应用中一般采用集中管理配置的方式,通过使用开源软件,如阿里的diamond,hashicorp的consul等等,SpringBoot中提供了各种各样的配置方式,下面一一来分析下. 1.配置方式和优先级 这些方式优先级如下:a. 命令行参数b.