測試starter
springboot 官方提供了很多 starter 來實現自動配置,簡化我們的開發,那麼我們能不能把自己常用的一些元件也封裝成乙個starter來實現自動化配置呢?答案是可以的。
>
>
>
org.springframework.bootgroupid
>
>
spring-boot-autoconfigureartifactid
>
>
2.3.1.releaseversion
>
dependency
>
>
>
org.springframework.bootgroupid
>
>
spring-boot-configuration-processorartifactid
>
>
2.3.1.releaseversion
>
dependency
>
dependencies
>
@configurationproperties
("mystarter"
)public
class
mystarterproperties
public
void
setpro1
(string pro1)
public string getpro2()
public
void
setpro2
(string pro2)
public string getpro3()
public
void
setpro3
(string pro3)
public integer getpro4()
public
void
setpro4
(integer pro4)
}
public
class
mystarterservice';
}public
mystarterservice
(string pro1, string pro2, string pro3, integer pro4)
public string getpro1()
public
void
setpro1
(string pro1)
public string getpro2()
public
void
setpro2
(string pro2)
public string getpro3()
public
void
setpro3
(string pro3)
public integer getpro4()
public
void
setpro4
(integer pro4)
}
@configuration
@enableconfigurationproperties()
// 開啟配置
public
class
mystarterautoconfiguration
}
org.springframework.boot.autoconfigure.enableautoconfiguration=com.lizq.mystarter.mystarterautoconfiguration
,,
,]}
新建乙個 springboot 專案來測試一下我們自定義的starter。在 pom.xml 中引入依賴。
>
>
com.lizqgroupid
>
>
mystarter-spring-boot-starterartifactid
>
>
1.0-snapshotversion
>
dependency
>
1.測試 mystarterservice 服務類是否自動裝配
public
class
implements
commandlinerunner
@autowired
private mystarterservice service;
@override
public
void
run(string.
.. args)
throws exception
}
mystarter:
pro1: pro1
pro3: pro3
pro4:
3000
至此,我們完成了自定義starter,並且測試成功。關於springboot的核心原理,可以檢視 《springboot 核心原理》 springBoot定製自己的banner
每當我們啟動springboot專案時,控制台上總會列印這樣的logo 實際上是springboot在這個地方放置了乙個彩蛋,雖然沒有什麼實際的意義,但的確增加了不少樂趣 當我們不想要或者想要修改他時,springboot也給了我們隱藏和修改的空間。中隱藏 public static void ma...
springboot配置自己的starter
springboot官方的啟動器格式都是 spring boot starter 自定義啟動器格式應為 spring boot starter 在啟動器模組中新增自動配置模組的依賴 引入自動配置模組 com.sprinboot groupid mystart spring boot start au...
SpringBoot建立HttpClient並使用
1 引入依賴 併發數 defaultmaxperroute 20 建立連線的最長時間 connecttimeout 1000 從連線池中獲取到連線的最長時間 connectionrequesttimeout 500 資料傳輸的最長時間 首先例項化乙個連線池管理器,設定最大連線數 併發連線數 例項化連...