Spring Boot筆記二:快速創建以及yml文件自動註入
阿新 • • 發佈:2019-01-29
conf 一個 pan .... 幾分鐘 ont 分鐘 重要 ext
上個筆記寫了如何自己去創建Spring boot,以及如何去打jar包,其實,還是有些麻煩的,我們還自己新建了幾個文件夾不是。
Idea可以讓我們快速的去創建Spring boot應用,來看
一、快速創建Spring boot
沒啥講的了,點擊完成之後,我們需要等待幾分鐘,Idea會幫我們下載配置一些東西。
二、yml文件和自動註入
配置文件這個,我不打算細說,粗略的介紹一下,用的時候去百度就好了,目前已知的配置文件
1.xml
2.properties
3.yml
這三個裏面,我最喜歡的是yml,最不喜歡的是xml
舉個例子,比如的的name是許嵩,age是32
yml的寫法是這樣的:(中間一定有個空格)
name: 許嵩 age: 32
而xml的寫法是這樣的。。。。。蒼天啊。。。。
<name>許嵩</name>
<age>32</age>
書歸正傳,我們開始寫了
首先,我們創建兩個類,一個Person,一個Dog
package com.vae.springboot.study.bean; import org.springframework.boot.context.properties.ConfigurationProperties; importorg.springframework.stereotype.Component; import java.util.Date; import java.util.List; import java.util.Map; @Component @ConfigurationProperties(prefix = "person") public class Person { private String name; private Integer age; private Boolean boss; private Date birth;private Map<String,Object> maps; private List<String> lists; private Dog dog; @Override public String toString() { return "Person{" + "name=‘" + name + ‘\‘‘ + ", age=" + age + ", boss=" + boss + ", birth=" + birth + ", maps=" + maps + ", lists=" + lists + ", dog=" + dog + ‘}‘; } public Boolean getBoss() { 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<String> getLists() { return lists; } public void setLists(List<String> lists) { this.lists = lists; } public Dog getDog() { return dog; } public void setDog(Dog dog) { this.dog = dog; } public String getName() { return name; } public void setName(String name) { this.name = name; } public Integer getAge() { return age; } public void setAge(Integer age) { this.age = age; } }
package com.vae.springboot.study.bean; public class Dog { private String name; private Integer age; @Override public String toString() { return "Dog{" + "name=‘" + name + ‘\‘‘ + ", age=" + age + ‘}‘; } public String getName() { return name; } public void setName(String name) { this.name = name; } public Integer getAge() { return age; } public void setAge(Integer age) { this.age = age; } }
這裏有一個非常重要的一點,一定要寫ToString方法,我為了省事,沒寫這個,結果註入之後沒有顯示出來 一定要寫!
OK,現在來講一下
@Component 這個是加入到spring容器中
@ConfigurationProperties(prefix = "person") 這個是把類和我們的配置文件進行關聯,找的是person
我們再新建一個yml文件,如圖:
雖然上面有了一個properties,但是不管他,這倆是誰有誰起效,都有都一樣的話properties起效,貌似是
看看我的yml裏面寫的啥
person: age: 32 name: Vae birth: 1985/05/14 boss: false maps: {k1: v1,k2: 12} lists: - 許嵩 - 林俊傑 dog: name: 格洛米 age: 3
看看測試裏面
自動註入已經寫完了,我再次重復一下兩個特別重要的點
1.主程序是在study包下面,所有的類啊,Controller啊啥的,必須在study包下面,只有這樣,主程序才能對他們起效
2.類,必須寫Tostring方法................................
Spring Boot筆記二:快速創建以及yml文件自動註入