前言
我們在web項目啟動之后有時候還會做點其它的東西(比如,導入數(shù)據(jù)腳本),下面就說說spring-boot里怎么在程序啟動后加入自己要執(zhí)行的東西
方法如下:
新建一個類: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); } } |
再配合一個變量記錄系統(tǒng)是否初始化過,如果初始化了,就不再初始化了,這樣就可以做到啟動系統(tǒng)之后再自動將默認數(shù)據(jù)插入,很是方便
相關代碼參見:https://github.com/tomoya92/pybbs
總結
以上就是這篇文章的全部內(nèi)容了,希望本文的內(nèi)容對大家的學習或者工作具有一定的參考學習價值,如果有疑問大家可以留言交流,謝謝大家對服務器之家的支持。
原文鏈接:https://tomoya92.github.io/2017/02/20/spring-boot-startup/