日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 前端技术 > javascript >内容正文

javascript

springboot profile_SpringBoot简单配置

發布時間:2024/7/23 javascript 25 豆豆
生活随笔 收集整理的這篇文章主要介紹了 springboot profile_SpringBoot简单配置 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

????使用Spring Boot,配置工作將會變得更加簡單,我們只需要在application.properties中定義屬性,然后在代碼中直接使用@Value注入即可。?

如下:

book.author=xxxbook.name=yyy?book.pinyin=測試

????這里專門設置了中文,因為中文不做特殊處理會亂碼,處理方式為繼續在application.properties中添加如下代碼:

server.tomcat.uri-encoding=UTF-8spring.http.encoding.charset=UTF-8spring.http.encoding.enabled=truespring.http.encoding.force=true spring.messages.encoding=UTF-8

????然后 在IntelliJ IDEA中依次點擊File -> Settings -> Editor -> File Encodings?

將Properties Files (*.properties)下的Default encoding for properties files設置為UTF-8,將Transparent native-to-ascii conversion前的勾選上。

????在變量中通過@Value直接注入就行了,如下:

@Value(value = "${book.author}") private String bookAuthor; @Value("${book.name}") private?String?bookName;????@Value("${book.pinyin}")????private?String?bookPinYin;

類型安全的配置

剛剛說的這種方式我們在實際項目中使用的時候工作量略大,因為每個項目要注入的變量的值太多了,這種時候我們可以使用基于類型安全的配置方式,就是將properties屬性和一個Bean關聯在一起,這樣使用起來會更加方便。我么來看看這種方式怎么實現。

1.在src/main/resources文件夾下創建文件book.properties

文件內容如下:

book.name=紅樓夢book.author=曹雪芹book.price=28

2.創建Book Bean,并注入properties文件中的值

代碼如下:

@Component@PropertySource(value= "book.properties")@ConfigurationProperties(prefix = "book")public class BookBean { private String name; private String author; private String price; public String getName() { return name; } public void setName(String name) { this.name = name; } public String getAuthor() { return author; } public void setAuthor(String author) { this.author = author; } public String getPrice() { return price; } public void setPrice(String price) { this.price = price; }}

prefix是指前綴,location指定要注入文件的位置。

3.添加路徑映射

在Controller中添加如下代碼注入Bean:

@Autowiredprivate?BookBean?bookBean;

添加路徑映射:

@RequestMapping("/book") public String book() { return "Hello Spring Boot! The BookName is "+bookBean.getName();}

運行效果如下:?

日志配置

????默認情況下Spring Boot使用Logback作為日志框架,也就是我們前面幾篇博客中用到的打印日志方式,當然如果有需要我們可以手動配置日志級別以及日志輸出位置,相比于我們在Spring容器中寫的日志輸出代碼,這里的配置簡直就是小兒科了,只需要在application.properties中添加如下代碼:

logging.file=/home/sang/workspace/log.loglogging.level.org.springframework.web=debug

上面表示配置日志輸出位置,下面配置日志級別。

Profile配置問題

????Spring Boot 提供了更為簡潔的方式。全局Profile配置我們使用application-{profile}.properties來定義,然后在application.properties中通過spring.profiles.active來指定使用哪個Profile。

1.在src/main/resources文件夾下定義不同環境下的Profile配置文件,文件名分別為application-prod.properties和application-dev.properties,這兩個前者表示生產環境下的配置,后者表示開發環境下的配置,如下:

application-prod.properties:

server.port=8081

application-dev.properties:

server.port=8080

然后在application.properties中進行簡單配置,如下:

spring.profiles.active=dev

這個表示使用開發環境下的配置。然后運行項目,我們得通過8080端口才可以訪問:?

如果想換為生產環境,只需要把spring.profiles.active=dev改為spring.profiles.active=prod即可,當然訪問端口這時也變為8081了,如下:

SpringBoot配置時,也可以用yml來配置,用yml來配置的話,結構相對要清晰很多。

????注意點:

1,原有的key,例如

server.port

,按“.”分割,都變成樹狀的配置

server: prot: 8081

2,key后面的冒號,后面一定要跟一個空格

#application.ymlserver: port: 8080 spring: datasource: name: test url: jdbc:mysql://127.0.0.1:3306/test username: root password: xxx

兩者的區別

1.內容格式比較:

??? .properties文件,通過.來連接,通過=來賦值,結構上,沒有分層的感覺,但比較直接。

??? .yml文件,通過:來分層,結構上,有比較明顯的層次感,最后key賦值的:后需要留一個空格

2.執行順序

????如果工程中同時存在application.properties文件和 application.yml文件,yml文件會先加載,而后加載的properties文件會覆蓋yml文件。所以建議工程中,只使用其中一種類型的文件即可。

總結

以上是生活随笔為你收集整理的springboot profile_SpringBoot简单配置的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。