欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

SpringBoot自定義Starter實(shí)現(xiàn)流程詳解

 更新時(shí)間:2022年09月27日 08:58:46   作者:CaptainCats  
SpringBoot中的starter是一種非常重要的機(jī)制,能夠拋棄以前繁雜的配置,將其統(tǒng)一集成進(jìn)starter,應(yīng)用者只需要在maven中引入starter依賴,SpringBoot就能自動(dòng)掃描到要加載的信息并啟動(dòng)相應(yīng)的默認(rèn)配置。starter讓我們擺脫了各種依賴庫(kù)的處理,需要配置各種信息的困擾

starter起步依賴

starter起步依賴是springboot一種非常重要的機(jī)制,

它打包了某些場(chǎng)景下需要用到依賴,將其統(tǒng)一集成到starter,

比如,

<dependency>
	<groupId>org.springframework.boot</groupId>
	<artifactId>spring-boot-starter-web</artifactId>
</dependency>

這就是一個(gè)starter,你可以把它看做一個(gè)外部外部項(xiàng)目,注意:是外部項(xiàng)目。

starter命名規(guī)則

springboot提供的starter以spring-boot-starter-x的方式命名,

自定義starter以x-spring-boot-starter的方式命名,

以區(qū)分springboot生態(tài)提供的starter。

自定義starter

new module

mystarter-spring-boot-starter

maven項(xiàng)目

添加依賴

<dependency>
	<groupId>org.springframework.boot</groupId>
	<artifactId>spring-boot-autoconfigure</artifactId>
	<version>2.2.9.RELEASE</version>
</dependency>

load maven changes

simplebean

package com.duohoob.bean;
import org.springframework.boot.autoconfigure.EnableAutoConfiguration;
import org.springframework.boot.context.properties.ConfigurationProperties;
/**
 * 這兩個(gè)都是非@Component注解,
 * 否則springboot啟動(dòng)時(shí)會(huì)直接被加載進(jìn)spring容器
 */
@EnableAutoConfiguration
@ConfigurationProperties(prefix = "simplebean")
public class SimpleBean {
	private String id;
	private String name;
	public String getId() {
		return id;
	}
	public void setId(String id) {
		this.id = id;
	}
	public String getName() {
		return name;
	}
	public void setName(String name) {
		this.name = name;
	}
	@Override
	public String toString() {
		return "SimpleBean{" +
				"id='" + id + '\'' +
				", name='" + name + '\'' +
				'}';
	}
}

自動(dòng)配置類(lèi)

package com.duohoob.config;
import com.duohoob.bean.SimpleBean;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;
@Configuration
public class MyAutoConfiguration {
	@Bean
	public SimpleBean simpleBean() {
		return new SimpleBean();
	}
}

META-INF\spring.factories

在resources下創(chuàng)建META-INF\spring.factories

org.springframework.boot.autoconfigure.EnableAutoConfiguration=\
com.duohoob.config.MyAutoConfiguration

在spring-boot-mytest中引入mystarter-spring-boot-starter

<dependency>
	<groupId>com.duohoob</groupId>
	<artifactId>mystarter-spring-boot-starter</artifactId>
	<version>1.0-SNAPSHOT</version>
</dependency>

load maven changes

添加配置

在spring-boot-mytest的src/main/resources/application.properties中添加配置

通過(guò)@Autowired引用

package com.duohoob.springbootmytest.controller;
import com.duohoob.bean.SimpleBean;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
@RestController
public class TestController {
	@Autowired
	private SimpleBean simplebean;
	@RequestMapping("/test")
	public String test() {
		return simplebean.toString();
	}
}

啟動(dòng)訪問(wèn)

到此這篇關(guān)于SpringBoot自定義Starter實(shí)現(xiàn)流程詳解的文章就介紹到這了,更多相關(guān)SpringBoot自定義Starter內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • 詳解springboot通過(guò)Async注解實(shí)現(xiàn)異步任務(wù)及回調(diào)的方法

    詳解springboot通過(guò)Async注解實(shí)現(xiàn)異步任務(wù)及回調(diào)的方法

    這篇文章主要介紹了springboot通過(guò)Async注解實(shí)現(xiàn)異步任務(wù)及回調(diào),文中通過(guò)一個(gè)簡(jiǎn)單示例來(lái)直觀的理解什么是同步調(diào)用,在單元測(cè)試用例中,注入?SyncTask?對(duì)象,并在測(cè)試用例中執(zhí)行?doTaskOne(),doTaskTwo(),doTaskThree()?三個(gè)方法,具體實(shí)現(xiàn)方式跟隨小編一起看看吧
    2022-05-05
  • linux中nohup?java?-jar啟動(dòng)java項(xiàng)目的步驟

    linux中nohup?java?-jar啟動(dòng)java項(xiàng)目的步驟

    nohup是一個(gè)Unix和Linux命令,用于運(yùn)行關(guān)閉時(shí)不會(huì)被終止的進(jìn)程,這篇文章主要給大家介紹了關(guān)于linux中nohup?java?-jar啟動(dòng)java項(xiàng)目的相關(guān)資料,文中通過(guò)代碼介紹的非常詳細(xì),需要的朋友可以參考下
    2024-08-08
  • Java實(shí)現(xiàn)簡(jiǎn)單通訊錄管理系統(tǒng)

    Java實(shí)現(xiàn)簡(jiǎn)單通訊錄管理系統(tǒng)

    這篇文章主要為大家詳細(xì)介紹了Java實(shí)現(xiàn)簡(jiǎn)單通訊錄管理系統(tǒng),文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2021-07-07
  • Java使用PreparedStatement接口及ResultSet結(jié)果集的方法示例

    Java使用PreparedStatement接口及ResultSet結(jié)果集的方法示例

    這篇文章主要介紹了Java使用PreparedStatement接口及ResultSet結(jié)果集的方法,結(jié)合實(shí)例形式分析了PreparedStatement接口及ResultSet結(jié)果集的相關(guān)使用方法與操作注意事項(xiàng),需要的朋友可以參考下
    2018-07-07
  • java中實(shí)現(xiàn)分頁(yè)的幾種常見(jiàn)方式總結(jié)

    java中實(shí)現(xiàn)分頁(yè)的幾種常見(jiàn)方式總結(jié)

    在項(xiàng)目中經(jīng)常會(huì)查詢大量數(shù)據(jù),這就要用到分頁(yè)展示,下面這篇文章主要給大家介紹了關(guān)于java中實(shí)現(xiàn)分頁(yè)的幾種常見(jiàn)方式,文中通過(guò)示例代碼介紹的非常詳細(xì),需要的朋友可以參考下
    2022-12-12
  • springboot使用redisRepository和redistemplate操作redis的過(guò)程解析

    springboot使用redisRepository和redistemplate操作redis的過(guò)程解析

    本文給大家介紹springboot整合redis/分別用redisRepository和redistemplate操作redis,本文結(jié)合實(shí)例代碼給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友參考下吧
    2022-05-05
  • Java靜態(tài)內(nèi)部類(lèi)實(shí)現(xiàn)單例過(guò)程

    Java靜態(tài)內(nèi)部類(lèi)實(shí)現(xiàn)單例過(guò)程

    這篇文章主要介紹了Java靜態(tài)內(nèi)部類(lèi)實(shí)現(xiàn)單例過(guò)程,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下
    2019-10-10
  • Java string.trim()究竟去掉了什么

    Java string.trim()究竟去掉了什么

    這篇文章主要介紹了Java string.trim()究竟去掉了什么,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧
    2019-12-12
  • 如何通過(guò)jstack命令dump線程信息

    如何通過(guò)jstack命令dump線程信息

    這篇文章主要介紹了如何通過(guò)jstack命令dump線程信息,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下
    2020-07-07
  • 舉例講解Java中do-while語(yǔ)句的使用方法

    舉例講解Java中do-while語(yǔ)句的使用方法

    這篇文章主要介紹了Java中do-while語(yǔ)句的使用方法例子,是Java入門(mén)學(xué)習(xí)中的基礎(chǔ)知識(shí),需要的朋友可以參考下
    2015-10-10

最新評(píng)論