hello朋友們,我是ratelblog的李某人。
很多時候我們在開發中會遇到這種場景,就是在專案啟動後立刻執行某些自定義的**。
比如:在專案啟動後初始化載入資料、或者進行一些其它的業務操作。
springboot提供了兩個介面來幫助我們實現這種需求。這兩個介面分別為commandlinerunner
@functionalinte***ce
/*** callback used to run the bean.
* @throws exception on error
*/}@functionalinte***ce
public inte***ce commandlinerunner
二者的功能和官方文件一模一樣,都是在容器初始化完畢之後執行起run方法
而commandlinerunner介面中run方法的引數為string陣列。
@component
@override
}}
@component
public class commandlinerunnerimpl implements commandlinerunner
}
...generating unique operation named: findrbuserlistusingget_1
commandlinerunner ok 專案啟動後執行自定義程式如下。。。
如果我們有多個實現類,需要按照一定的順序執行,那麼可以通過@order註解實現。
在實現類上加上@order註解。@order(value=整數值)。springboot會按照@order
中的value值從小到大依次執行。
@order(value = 2)
@component
......
}@order(value = 1)
@component
public class commandlinerunnerimpl implements commandlinerunner
...generating unique operation named: findrbuserlistusingget_1
commandlinerunner ok 專案啟動後執行自定義程式如下。。。
springboot啟動後執行某些命令
多個類實現介面可以使用 order註解來定義執行順序 專案啟動完成了,因此可以注入spring管理的類 例項 component order 1 autowired private stringredistemplate stringredistemplate override stringredi...
springboot專案修改啟動埠
測試使用了一下springboot,挺好用的,可以不用配置那些所謂的xml繁瑣的配置檔案,方便快速搭建專案。但是,當我們有多個springboot專案時,可能就會出現80埠別占用,導致其他專案無法使用,這時候就得 要修改專案中的啟動埠。解決方法很簡單,如下 public static void ma...
Spring Boot專案啟動埠修改
在使用spring boot進行專案啟動時,如果需要同時啟動2個springboot工程,或者專案中tomcat的預設埠號8080被使用時,就會有問題 如下圖所示 會因為8080埠被第乙個應用占用而導致第二個應用無法啟動,這時就需要修改其中乙個工程的啟動埠。這裡收集到了兩種處理方式 1.通過實現em...