Spring Boot中文手冊(3):Starters

該系列的文章主要參考Spring Boot的官方文檔來進行翻譯卖子,逐步將官方文檔翻譯過來抬虽,方便大家共同學(xué)習(xí)和討論官觅,但是畢竟能力有限,如有問題阐污,感謝大家留言指正休涤。

Starters

Starters是Spring Boot提供的一組非常方便的依賴描述器,你可以在你的應(yīng)用中直接使用它們笛辟。你可以獲得所有你需要的Spring和相關(guān)技術(shù)一站式服務(wù)功氨,你不需要翻閱什么示例代碼,不需要復(fù)制粘貼大量的依賴配置手幢。比如捷凄,當(dāng)你想使用Spring和JPA來訪問數(shù)據(jù)庫時,在你的項目中添加 spring-boot-starter-data-jpa 依賴即可围来。

Starters包含了你啟動搭建并啟動一個項目所需的大量依賴跺涤,并且還提供一致的、可管理的傳遞性依賴支持监透。

What’s in a name(名字里面都有什么桶错?)

所有的官方starter遵循了一個相似的命名模式: spring-boot-starter-*,其中的 * 是一個特殊符號胀蛮,代表不同類型的應(yīng)用院刁。這種命名模式能讓你很方便地找到你想要的那個starter。很多IDE里面集成的Maven都支持你根據(jù)名字來搜索依賴粪狼,比如安裝了相應(yīng)的Eclipse或者STS插件之后退腥,你可以在pom編輯器中輸入“spring-boot-starter”,然后通過按住 ctrl-space 來獲取一個完整的列表供你選擇再榄。

在“創(chuàng)建你自己的Starter”那一章中阅虫,我們提到了第三方的starters不應(yīng)該以 spring-boot作為命名前綴,因為這個前綴是Spring Boot官方制品預(yù)留的不跟,一般情況下颓帝,第三方的starter都是使用項目名稱作為命名前綴的,比如一個第三方的starter項目叫做 thirdpartyproject 窝革,那么它的starter可以命名為 thirdpartyproject-spring-boot-starter购城。

Spring Boot官方在 org.springframework.boot 組下提供了一下這些應(yīng)用starters供大家使用:

spring-boot-starter :核心starter,包含自動配置的支持虐译,日志記錄和YAML文件的支持瘪板;

spring-boot-starter-activemq :支持Apache ActiveMQ啟動JMS消息的starter。

spring-boot-starter-amqp :接入Spring AMQP漆诽、Rabbit MQ時使用的starter侮攀。

spring-boot-starter-aop :通過Spring AOP锣枝、AspectJ實現(xiàn)面向切面編程時使用的starter。

spring-boot-starter-artemis :基于Apache Artemis來實現(xiàn)JMS消息系統(tǒng)時使用的starter兰英。

spring-boot-starter-batch :實現(xiàn)Spring Batch時使用的starter撇叁。

spring-boot-starter-cache :實現(xiàn)Spring框架的緩存支持時使用的starter。

spring-boot-starter-cloud-connectors :實現(xiàn)在云平臺上簡單而便利地連接微服務(wù)時的Spring Cloud連接器時使用的starter畦贸,就如同Cloud Foundry 和 Heroku一樣陨闹。

spring-boot-starter-data-cassandra :使用Cassandra分布式數(shù)據(jù)庫或者Spring Data Cassandra依賴的starter。

spring-boot-starter-data-cassandra-reactive :使用Cassandra分布式數(shù)據(jù)庫和Spring Data Cassandra Reactive時依賴的starter薄坏。

spring-boot-starter-data-couchbase :使用Couchbase面向文檔的數(shù)據(jù)庫和Spring Data Couchbase時依賴的starter趋厉。

spring-boot-starter-data-couchbase-reactive :使用Couchbase面向文檔的數(shù)據(jù)庫和Spring Data Couchbase Reactive時依賴的starter。

spring-boot-starter-data-elasticsearch :使用Elasticsearch搜索和分析引擎和Spring Data Elasticsearch時依賴的starter胶坠。

spring-boot-starter-data-jdbc :使用Spring Data JDBC時依賴的starter君账。

spring-boot-starter-data-jpa :使用Spring數(shù)據(jù)JPA與Hibernate時依賴的starter。

spring-boot-starter-data-ldap :使用Spring Data LDAP時依賴的starter沈善。

spring-boot-starter-data-mongodb :使用MongoDB面向文檔的數(shù)據(jù)庫和Spring Data MongoDB時依賴的starter杈绸。

spring-boot-starter-data-mongodb-reactive :使用MongoDB面向文檔的數(shù)據(jù)庫和Spring Data MongoDB Recative時依賴的starter。

spring-boot-starter-data-neo4j :使用Neo4j圖數(shù)據(jù)庫和Spring Data Neo4j時依賴的starter矮瘟。

spring-boot-starter-data-redis :使用Redis key-value 數(shù)據(jù)存儲與Spring Data Redis和Jedis客戶端時依賴的starter瞳脓。

spring-boot-starter-data-redis-reactive :使用Redis key-value 數(shù)據(jù)存儲與Spring Data Redis Reactive和Jedis客戶端時依賴的starter。

spring-boot-starter-data-rest :通過使用Spring Data REST在REST上暴露Spring數(shù)據(jù)庫時依賴的starter澈侠。

spring-boot-starter-data-solr :使用Apache Solr搜索平臺與Spring Data Solr時依賴的starter劫侧。

spring-boot-starter-freemarker :使用FreeMarker視圖構(gòu)建MVC Web應(yīng)用程序時依賴的starter。

spring-boot-starter-groovy-templates :使用Groovy模板視圖構(gòu)建MVC Web應(yīng)用程序時依賴的starter哨啃。

spring-boot-starter-hateoas :使用Spring MVC和Spring HATEOAS構(gòu)建基于超媒體的RESTful Web應(yīng)用程序時依賴的starter烧栋。

spring-boot-starter-integration :使用Spring Integration時依賴的starter。

spring-boot-starter-jdbc :使用JDBC與Tomcat JDBC連接池時依賴的starter拳球。

spring-boot-starter-jersey :使用JAX-RS和Jersey構(gòu)建RESTful Web應(yīng)用程序時依賴的starter审姓。spring-boot-starter-web的替代方案。

spring-boot-starter-jooq :使用jOOQ訪問SQL數(shù)據(jù)庫時依賴的starter祝峻。spring-boot-starter-data-jpa或spring-boot-starter-jdbc的替代方案魔吐。

spring-boot-starter-json :用于讀取和寫入json時依賴的starter。

spring-boot-starter-jta-atomikos :使用Atomikos的JTA事務(wù)時依賴的starter莱找。

spring-boot-starter-jta-bitronix :使用Bitronix進行JTA 事務(wù)時依賴的starter酬姆。

spring-boot-starter-mail :使用Java Mail 或者 Spring框架的Email發(fā)送支持時依賴的starter。

spring-boot-starter-mustache :使用Mustache視圖構(gòu)建MVC Web應(yīng)用程序時依賴的starter奥溺。

spring-boot-starter-oauth2-client :使用Spring Security’s OAuth2/OpenID連接客戶端時依賴的starter辞色。

spring-boot-starter-oauth2-resource-server :使用Spring Security’s OAuth2/OpenID服務(wù)端時依賴的starter。

spring-boot-starter-quartz :使用Spring Boot quartz時依賴的starter浮定。

spring-boot-starter-security :使用Spring Boot security時依賴的starter相满。

spring-boot-starter-test :使用JUnit层亿,Hamcrest和Mockito的庫測試Spring Boot應(yīng)用程序時依賴的starter。

spring-boot-starter-thymeleaf :使用Thymeleaf視圖構(gòu)建MVC Web應(yīng)用程序時依賴的starter立美。

spring-boot-starter-validation :使用Java Bean Validation 與Hibernate Validator時依賴的starter匿又。

spring-boot-starter-web :使用Spring MVC構(gòu)建Web,包括RESTful應(yīng)用程序悯辙。使用Tomcat作為默認的嵌入式容器時依賴的starter琳省。

spring-boot-starter-web-services :實現(xiàn)Spring Web Services時依賴的starter迎吵。

spring-boot-starter-webflux :使用Spring Framework’s Reactive Web support特性構(gòu)建WebFlux應(yīng)用時依賴的starter躲撰。

spring-boot-starter-websocket :使用Spring Framework’s WebSocket support特性構(gòu)建WebSocket應(yīng)用時依賴的starter。

除了這些starters击费,下面的starters還可以用來添加生產(chǎn)環(huán)境的特性

spring-boot-starter-actuator :使用Spring Boot Actuator提供生產(chǎn)準備功能拢蛋,可幫助您監(jiān)控和管理應(yīng)用程序時依賴的starter。

最后蔫巩,Spring Boot還提供了以下starters谆棱,用來排除或者替換特定技術(shù):

spring-boot-starter-jetty :使用Jetty作為嵌入式servlet容器時依賴的starter。spring-boot-starter-tomcat的替代方案圆仔。

spring-boot-starter-log4j2 :使用Log4j2進行日志記錄時依賴的starter垃瞧。spring-boot-start-logging的替代方法。

spring-boot-starter-logging :使用Logback進行日志記錄時依賴的starter坪郭。默認的日志啟動器个从。

spring-boot-starter-reactor-netty :使用Reactive Netty作為嵌入式reactive http服務(wù)器時依賴的starter。

spring-boot-starter-tomcat :使用Tomcat作為嵌入式servlet容器時依賴的starter歪沃。spring-boot-starter-web的默認servlet容器啟動器嗦锐。

spring-boot-starter-undertow :使用Undertow作為嵌入式servlet容器時依賴的starter。spring-boot-starter-tomcat的替代方案沪曙。

查看GitHub上位于spring-boot-starters模塊內(nèi)的README文件奕污,可以獲取到一個社區(qū)貢獻的其他starter POMs列表。

END


?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末液走,一起剝皮案震驚了整個濱河市碳默,隨后出現(xiàn)的幾起案子,更是在濱河造成了極大的恐慌缘眶,老刑警劉巖腻窒,帶你破解...
    沈念sama閱讀 206,378評論 6 481
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件,死亡現(xiàn)場離奇詭異磅崭,居然都是意外死亡儿子,警方通過查閱死者的電腦和手機,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 88,356評論 2 382
  • 文/潘曉璐 我一進店門砸喻,熙熙樓的掌柜王于貴愁眉苦臉地迎上來柔逼,“玉大人蒋譬,你說我怎么就攤上這事∮涫剩” “怎么了犯助?”我有些...
    開封第一講書人閱讀 152,702評論 0 342
  • 文/不壞的土叔 我叫張陵,是天一觀的道長维咸。 經(jīng)常有香客問我剂买,道長,這世上最難降的妖魔是什么癌蓖? 我笑而不...
    開封第一講書人閱讀 55,259評論 1 279
  • 正文 為了忘掉前任瞬哼,我火速辦了婚禮,結(jié)果婚禮上租副,老公的妹妹穿的比我還像新娘坐慰。我一直安慰自己,他們只是感情好用僧,可當(dāng)我...
    茶點故事閱讀 64,263評論 5 371
  • 文/花漫 我一把揭開白布结胀。 她就那樣靜靜地躺著,像睡著了一般责循。 火紅的嫁衣襯著肌膚如雪糟港。 梳的紋絲不亂的頭發(fā)上,一...
    開封第一講書人閱讀 49,036評論 1 285
  • 那天院仿,我揣著相機與錄音秸抚,去河邊找鬼。 笑死意蛀,一個胖子當(dāng)著我的面吹牛耸别,可吹牛的內(nèi)容都是我干的。 我是一名探鬼主播县钥,決...
    沈念sama閱讀 38,349評論 3 400
  • 文/蒼蘭香墨 我猛地睜開眼秀姐,長吁一口氣:“原來是場噩夢啊……” “哼!你這毒婦竟也來了若贮?” 一聲冷哼從身側(cè)響起省有,我...
    開封第一講書人閱讀 36,979評論 0 259
  • 序言:老撾萬榮一對情侶失蹤,失蹤者是張志新(化名)和其女友劉穎谴麦,沒想到半個月后蠢沿,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體,經(jīng)...
    沈念sama閱讀 43,469評論 1 300
  • 正文 獨居荒郊野嶺守林人離奇死亡匾效,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點故事閱讀 35,938評論 2 323
  • 正文 我和宋清朗相戀三年舷蟀,在試婚紗的時候發(fā)現(xiàn)自己被綠了。 大學(xué)時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片。...
    茶點故事閱讀 38,059評論 1 333
  • 序言:一個原本活蹦亂跳的男人離奇死亡野宜,死狀恐怖扫步,靈堂內(nèi)的尸體忽然破棺而出,到底是詐尸還是另有隱情匈子,我是刑警寧澤河胎,帶...
    沈念sama閱讀 33,703評論 4 323
  • 正文 年R本政府宣布,位于F島的核電站虎敦,受9級特大地震影響游岳,放射性物質(zhì)發(fā)生泄漏。R本人自食惡果不足惜其徙,卻給世界環(huán)境...
    茶點故事閱讀 39,257評論 3 307
  • 文/蒙蒙 一胚迫、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧擂橘,春花似錦晌区、人聲如沸摩骨。這莊子的主人今日做“春日...
    開封第一講書人閱讀 30,262評論 0 19
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽恼五。三九已至昌罩,卻和暖如春,著一層夾襖步出監(jiān)牢的瞬間灾馒,已是汗流浹背茎用。 一陣腳步聲響...
    開封第一講書人閱讀 31,485評論 1 262
  • 我被黑心中介騙來泰國打工, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留睬罗,地道東北人轨功。 一個月前我還...
    沈念sama閱讀 45,501評論 2 354
  • 正文 我出身青樓,卻偏偏與公主長得像容达,于是被迫代替她去往敵國和親古涧。 傳聞我的和親對象是個殘疾皇子,可洞房花燭夜當(dāng)晚...
    茶點故事閱讀 42,792評論 2 345

推薦閱讀更多精彩內(nèi)容