前言
我們?cè)趙eb項(xiàng)目啟動(dòng)之后有時(shí)候還會(huì)做點(diǎn)其它的東西(比如,導(dǎo)入數(shù)據(jù)腳本),下面就說說spring-boot里怎么在程序啟動(dòng)后加入自己要執(zhí)行的東西
方法如下:
新建一個(gè)類:BeforeStartup.java
1
2
3
4
5
6
7
8
9
10
11
12
|
@Configuration public class BeforeStartup implements ApplicationListener<ContextRefreshedEvent> { @Autowired private InitDB initDB; @Override public void onApplicationEvent(ContextRefreshedEvent contextRefreshedEvent) { initDB.createUser(); } } |
InitDB.java
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
|
@Component public class InitDB { Logger log = Logger.getLogger(MyInvocationSecurityMetadataSource. class ); @Autowired private UserService userService; // create user public void createUser() { User user = new User(); user.setAvatar( "aaa" ); user.setBlock( false ); user.setEmail( "aaa" ); user.setInTime( new Date()); user.setPassword( "1111" ); user.setSignature( "1111" ); user.setUrl( "222" ); user.setUsername( "bb" ); userService.save(user); } } |
再配合一個(gè)變量記錄系統(tǒng)是否初始化過,如果初始化了,就不再初始化了,這樣就可以做到啟動(dòng)系統(tǒng)之后再自動(dòng)將默認(rèn)數(shù)據(jù)插入,很是方便
相關(guān)代碼參見:https://github.com/tomoya92/pybbs
總結(jié)
以上就是這篇文章的全部?jī)?nèi)容了,希望本文的內(nèi)容對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,如果有疑問大家可以留言交流,謝謝大家對(duì)服務(wù)器之家的支持。
原文鏈接:https://tomoya92.github.io/2017/02/20/spring-boot-startup/