摘要:比如日志默認使用作為第一選擇,默認集成了,并且支持配置使用貌似和有點變化,暫時不折騰了單元測試
環境:Spring Boot 1.5.4
基于 Spring Boot 創建一個命令行應用,先來個最基本的體驗,體驗一下:
配置管理(配置文件加載,多環境配置文件)
日志
單元測試
創建項目比較好的兩種方法:
通過 https://start.spring.io/ 網站,生成項目框架,導入到 IDE
IDEA 有Spring Boot的插件,直接按照提示創建
其他
創建個最基本的應用,包含了devtools,logging,test,以及maven插件:
...配置管理 修改 banner... org.springframework.boot spring-boot-starter-parent 1.5.3.RELEASE org.springframework.boot spring-boot-starter org.springframework.boot spring-boot-starter-logging org.springframework.boot spring-boot-devtools runtime org.springframework.boot spring-boot-starter-test test ... org.springframework.boot spring-boot-maven-plugin
Spring Boot 的默認 banner:
. ____ _ __ _ _ / / ___"_ __ _ _(_)_ __ __ _ ( ( )\___ | "_ | "_| | "_ / _` | / ___)| |_)| | | | | || (_| | ) ) ) ) " |____| .__|_| |_|_| |_\__, | / / / / =========|_|==============|___/=/_/_/_/ :: Spring Boot :: (v1.5.3.RELEASE)
resources 目錄下創建一個 banner.txt 文件可以修改,并且還提供了一些參數,可以配色。
當然也可以在配置文件或入口處關閉:
spring.main.banner-mode=off
或
public static void main(String[] args) { SpringApplication application = new SpringApplication(HelloApplication.class); application.setBannerMode(Banner.Mode.OFF); application.run(args); }
關閉 banner 竟然還弄這么多方式,我也是醉了,其實只是展示一下在入口處還可以進行很多應用的配置罷了。
自定義屬性如果不是特殊的應用場景,就只需要在 application.properties 中完成一些屬性配置就能開啟各模塊的應用。
application.properties:
mysql.host=default mysql.user=default_user mysql.mix=${mysql.host}/${mysql.user}
如上所示:參數之間也可以使用變量直接引用來使用
定義 MysqlProperties Class:
@Component public class MysqlProperties { @Value("${mysql.host:localhost}") private String host; @Value("${admin.user:root}") private String user; // 省略getter、setter、toString }
@Value 注解未免有點蛋疼
可以使用 @ConfigurationProperties 注解直接配置個屬性前綴,同時還可以加載一個額外的 .properties 文件
app.properties:
app.name=hello app.version=1.0
定義 AppProperties Class:
@Component @PropertySource("classpath:app.properties") @ConfigurationProperties(prefix = "app") public class AppProperties { private String name; private String version; // 省略getter、setter、toString }命令行運行
Spring Boot 默認 Application 定義了 main 方法入口,所以要實現一個命令行運行的應用,需要實現 CommandLineRunner 接口,覆寫 run 方法,這樣命令行參數就通過變長參數 strings 接受到。
@SpringBootApplication public class HelloApplication implements CommandLineRunner { @Override public void run(String... strings) throws Exception { } }多環境配置
Spring Boot中多環境配置文件名需要滿足application-{profile}.properties的格式,其中{profile}對應你的環境標識,如:
application-dev.properties:開發環境 application-test.properties:測試環境
同時,需要在application.properties文件中通過spring.profiles.active屬性來設置,其值對應{profile}值,并且可以設置多個。
其次,通過命令行參數 --spring.profiles.active=test 可以切換多環境。比如:
java -jar xxx.jar --spring.profiles.active=test日志
Spring Boot 默認使用 Logback 作為第一選擇,默認集成了 slf4j,并且支持配置使用 Log4j:
org.springframework.boot spring-boot-starter org.springframework.boot spring-boot-starter-logging org.springframework.boot spring-boot-starter-log4j2
log4j2 貌似和 log4j 有點變化,暫時不折騰了
單元測試文章版權歸作者所有,未經允許請勿轉載,若此文章存在違規行為,您可以聯系管理員刪除。
轉載請注明本文地址:http://specialneedsforspecialkids.com/yun/67254.html
摘要:開始介紹簡化了基于的應用開發,你只需要就能創建一個獨立的,產品級別的應用。該包含很多搭建,快速運行項目所需的依賴,并提供一致的,可管理傳遞性的依賴集。日志級別通過標識開啟控制臺級別日志記錄,也可以在中指定日志級別配置示例 開始 介紹 Spring Boot 簡化了基于 Spring 的應用開發,你只需要 run 就能創建一個獨立的,產品級別的 Spring 應用。 Spring 平臺...
摘要:不過可以切換到版本,兼容性未知。注解一旦添加了依賴會判斷這是一個應用,并啟動一個內嵌的容器默認是用于處理請求。注意中空字符串與的區別。 環境:Spring Boot 1.5.4 基于 Spring Boot 可以快速創建一個Web & Restful 應用,在開始應用之前,至少要了解以下用法: 定義路由,定義 HTTP 方法 獲取Header、GET、POST、路徑等參數 Cooki...
摘要:本文只是引子,后續更新到獨立章節。尤其是,這也是現在號稱流行的組合。幸虧現在看起來不主流了。增刪改查多條件組合查詢分頁,排序等多表關聯。而每個類寫上構造函數,,實在是蛋疼。 本文只是引子,后續更新到獨立章節。 環境:Spring Boot 1.5.4 到了操作數據庫的環節,以 MySQL 為基準,體驗一下數據庫的相關操作,先讓我糾結一下,至少有以下四種姿勢。 JDBC。原生的 JD...
摘要:響應式編程是基于異步和事件驅動的非阻塞程序,只是垂直通過在內啟動少量線程擴展,而不是水平通過集群擴展。三特性常用的生產的特性如下響應式編程模型適用性內嵌容器組件還有對日志消息測試及擴展等支持。 摘要: 原創出處 https://www.bysocket.com 「公眾號:泥瓦匠BYSocket 」歡迎關注和轉載,保留摘要,謝謝! 02:WebFlux 快速入門實踐 文章工程: JDK...
摘要:關聯關系的關聯關系定義上,感覺并不是很靈活,姿勢也比較難找。如,定義在關聯關系上的參數可以設置級聯的相關東西。因為序列化會涉及到實體類關聯對象的獲取,會觸發所有的關聯關系。 接(4) - Database 系列. Java Persistence API,可以理解就是 Java 一個持久化標準或規范,Spring Data JPA 是對它的實現。并且提供多個 JPA 廠商適配,如 Hi...
閱讀 998·2023-04-26 02:21
閱讀 2818·2021-09-24 09:47
閱讀 1608·2019-08-30 15:55
閱讀 2164·2019-08-30 14:01
閱讀 2320·2019-08-29 14:01
閱讀 2048·2019-08-29 12:46
閱讀 815·2019-08-26 13:27
閱讀 1933·2019-08-26 12:23