springboot官方的啟動器格式都是 spring-boot-starter-***
自定義啟動器格式應為***-spring-boot-starter
在啟動器模組中新增自動配置模組的依賴
<
!--引入自動配置模組--
>
com.sprinboot<
/groupid>
mystart-spring-boot-start-autoconfigurer<
/artifactid>
0.0.1
-snapshot<
/version>
<
/dependency>
在自動配置模組中需要有spring-boot-starter的依賴
<
!--引入springboot-start,所有starter都需要引入--
>
org.springframework.boot<
/groupid>
spring-boot-starter<
/artifactid>
<
/dependency>
@configurationproperties
(prefix =
"com.hello"
)public
class
helloproperties
public
void
setprefix
(string prefix)
public string getsuffix()
public
void
setsuffix
(string suffix)
}
@configurationproperties
註解使用需要指定配置檔案中的字首,如例子中的com.hello,然後在配置檔案中配置對應屬性名即可對映,每個屬性一定要有公共屬性的set方法簡單的業務類:
public
class
helloservice
public
void
sethelloproperties
(helloproperties helloproperties)
public string sayhello
(string name)
}
自動配置類:
在這裡面將自己的業務類配置到容器中。
@configuration
@enableconfigurationproperties
(helloproperties.
class
)//生效配置屬性檔案
public
class
helloserviceautoconfiguration
}
然後需要在類路徑的web-inf資料夾下寫乙個spring.factories檔案
這個檔案是來記錄需要註冊的bean的類名,其中需要記錄我們的自動配置類的類名,提供後才能將我們的自動配置類新增到springboot的spring容器中
org.springframework.boot.autoconfigure.enableautoconfiguration=\
com.sprinboot.start.helloserviceautoconfiguration
將starter和自動配置模組都打包後,只用在另乙個專案中新增starter的依賴
org.example<
/groupid>
mystart-spring-boot-starter<
/artifactid>
1.0-snapshot<
/version>
<
/dependency>
org.springframework.boot<
/groupid>
spring-boot-starter-web<
/artifactid>
<
/dependency>
com.hello.prefix=hello
com.hello.suffix=!!
!!
寫乙個控制器來測試
@restcontroller
public
class
hellocontroller
}
瀏覽器傳送請求,沒有問題
springBoot定製自己的banner
每當我們啟動springboot專案時,控制台上總會列印這樣的logo 實際上是springboot在這個地方放置了乙個彩蛋,雖然沒有什麼實際的意義,但的確增加了不少樂趣 當我們不想要或者想要修改他時,springboot也給了我們隱藏和修改的空間。中隱藏 public static void ma...
SpringBoot 建立自己的Starter
測試starter springboot 官方提供了很多 starter 來實現自動配置,簡化我們的開發,那麼我們能不能把自己常用的一些元件也封裝成乙個starter來實現自動化配置呢?答案是可以的。org.springframework.bootgroupid spring boot autoco...
SpringBoot的註解配置
springboot中基本捨棄了繁瑣的xml方式來進行配置轉而使用更加簡潔的註解來進行配置,有很多需要我們學習。雖然捨棄了xml配置,springboot給我們提供了很多註解來配置,比如 author komeijiyui configuration propertysource classpath...