spring boot读yml文件变量小结

编程入门 行业动态 更新时间:2024-10-12 08:16:07

spring boot读yml文件变量<a href=https://www.elefans.com/category/jswz/34/1769750.html style=小结"/>

spring boot读yml文件变量小结

#这是约定的服务器端口定义
server:port: 8080
#对象及成员变量的访问
people:name: Lucyage: 18#对象的内联式写法
people2: { name: Tom, age: 30}#数组
address:- beijing- shanghai#纯量
slogan: "make China great again!"

------------------------------------------------------

@RestController
public class HelloController {//约定内置的属性值@Value("${server.port}")public int serverPort;@Value("${people.name}")public String peopleName;@Value("${people.age}")public int peopleAge;@Value("${people2.name}")public String people2Name;@Value("${people2.age}")public int people2Age;//数组按索引值读@Value("${address[0]}")public String address0;/*故意设置数组索引越界,会报错:org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'helloController': Injection of autowired dependencies failed; nested exception is java.lang.IllegalArgumentException: Could not resolve placeholder 'address[2]' in value "${address[2]}"*///@Value("${address[2]}")//public String address2;@Value("${slogan}")public String slogan;@Autowiredpublic Environment env;@Autowiredpublic People people;   //这是要用ConfigurationProperties方式注入bean来访问@RequestMapping("/hello")public String hello(){return genStr();}private String genStr(){StringBuilder sb = new StringBuilder();sb.append("层次读变量属性 server.port="+serverPort);//sb.append("server.port="+serverPort);sb.append(", people.name="+peopleName);sb.append(", people.age="+peopleAge);sb.append(", 内联(in line)定义变量 people2.name="+people2Name);sb.append(", 内联(in line)定义变量 people2.age="+people2Age);sb.append(", address[0]="+address0);//sb.append(", address[2]="+address2);sb.append(", slogan="+slogan);sb.append(", people.name from env:"+env.getProperty("people.name"));sb.append(", address[2] from env:"+env.getProperty("address[2]"));//这行不会引起崩溃sb.append(", people.name from object:"+people.getName());//这行不会引起崩溃return sb.toString();}
}

-------------------------------------------------------

另外附People.java类

@Component  //Component这用来说明这是个springboot的bean
@ConfigurationProperties(prefix = "people") //注意,要指定prefix
public class People {private String name;private int age;public String getName() {return name;}public void setName(String name) {this.name = name;}public int getAge() {return age;}public void setAge(int age) {this.age = age;}
}

更多推荐

spring boot读yml文件变量小结

本文发布于:2024-02-25 19:23:24,感谢您对本站的认可!
本文链接:https://www.elefans.com/category/jswz/34/1700048.html
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。
本文标签:小结   变量   文件   spring   boot

发布评论

评论列表 (有 0 条评论)
草根站长

>www.elefans.com

编程频道|电子爱好者 - 技术资讯及电子产品介绍!