From abe91b18eba0c96e5a1accea8af3d57e3aa3d210 Mon Sep 17 00:00:00 2001 From: WenG <450292408@qq.com> Date: Tue, 17 May 2022 00:26:19 +0800 Subject: [PATCH] =?UTF-8?q?=E6=96=B0=E5=A2=9E=E6=9C=8D=E5=8A=A1=E5=90=AF?= =?UTF-8?q?=E5=8A=A8=E5=88=9D=E5=A7=8B=E5=8C=96=E6=8E=A7=E5=88=B6=E9=85=8D?= =?UTF-8?q?=E7=BD=AE?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../properties/ServerInitProperties.java | 38 +++++++++++++++++++ .../wgink/properties/ServerProperties.java | 12 ++++++ .../wgink/common/startup/CommonStartup.java | 30 +++++++++------ 3 files changed, 69 insertions(+), 11 deletions(-) create mode 100644 basic-properties/src/main/java/ink/wgink/properties/ServerInitProperties.java diff --git a/basic-properties/src/main/java/ink/wgink/properties/ServerInitProperties.java b/basic-properties/src/main/java/ink/wgink/properties/ServerInitProperties.java new file mode 100644 index 00000000..005b8cce --- /dev/null +++ b/basic-properties/src/main/java/ink/wgink/properties/ServerInitProperties.java @@ -0,0 +1,38 @@ +package ink.wgink.properties; + +/** + * @Description: 服务初始化配置 + * @Author: WenG + * @Date: 2022/5/16 22:54 + * @Version: 1.0 + **/ +public class ServerInitProperties { + + private Boolean table; + private Boolean menu; + private Boolean user; + + public Boolean getTable() { + return table == null ? true : table; + } + + public void setTable(Boolean table) { + this.table = table; + } + + public Boolean getMenu() { + return menu == null ? true : menu; + } + + public void setMenu(Boolean menu) { + this.menu = menu; + } + + public Boolean getUser() { + return user == null ? true : user; + } + + public void setUser(Boolean user) { + this.user = user; + } +} diff --git a/basic-properties/src/main/java/ink/wgink/properties/ServerProperties.java b/basic-properties/src/main/java/ink/wgink/properties/ServerProperties.java index 2445e530..08e3db33 100644 --- a/basic-properties/src/main/java/ink/wgink/properties/ServerProperties.java +++ b/basic-properties/src/main/java/ink/wgink/properties/ServerProperties.java @@ -45,6 +45,10 @@ public class ServerProperties { * 默认 home 页面 */ private String defaultHomePage; + /** + * 初始化 + */ + private ServerInitProperties init; public Integer getPort() { return port; @@ -102,6 +106,14 @@ public class ServerProperties { this.defaultHomePage = defaultHomePage; } + public ServerInitProperties getInit() { + return init; + } + + public void setInit(ServerInitProperties init) { + this.init = init; + } + @Override public String toString() { final StringBuilder sb = new StringBuilder("{"); diff --git a/common/src/main/java/ink/wgink/common/startup/CommonStartup.java b/common/src/main/java/ink/wgink/common/startup/CommonStartup.java index 3882d73a..d680f9e8 100644 --- a/common/src/main/java/ink/wgink/common/startup/CommonStartup.java +++ b/common/src/main/java/ink/wgink/common/startup/CommonStartup.java @@ -5,6 +5,7 @@ import ink.wgink.common.manager.env.EnvManager; import ink.wgink.interfaces.init.IInitBaseMenu; import ink.wgink.interfaces.init.IInitBaseTable; import ink.wgink.interfaces.init.IInitBaseUser; +import ink.wgink.properties.ServerProperties; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.boot.ApplicationArguments; import org.springframework.boot.ApplicationRunner; @@ -27,6 +28,8 @@ import java.util.Map; public class CommonStartup implements ApplicationRunner { private ApplicationContext applicationContext; + @Autowired + private ServerProperties serverProperties; @Autowired(required = false) private IInitBaseMenu initBaseMenu; @Autowired(required = false) @@ -40,20 +43,25 @@ public class CommonStartup implements ApplicationRunner { @Override public void run(ApplicationArguments args) throws Exception { - // 建表 - Map initBaseTableMap = applicationContext.getBeansOfType(IInitBaseTable.class); - for (Map.Entry kv : initBaseTableMap.entrySet()) { - kv.getValue().createTable(); + if (serverProperties.getInit() == null || serverProperties.getInit().getTable()) { + // 建表 + Map initBaseTableMap = applicationContext.getBeansOfType(IInitBaseTable.class); + for (Map.Entry kv : initBaseTableMap.entrySet()) { + kv.getValue().createTable(); + } } - // 初始化菜单 - if (initBaseMenu != null) { - initBaseMenu.init(); + if (serverProperties.getInit() == null || serverProperties.getInit().getMenu()) { + // 初始化菜单 + if (initBaseMenu != null) { + initBaseMenu.init(); + } } - // 创建用户 - if (initBaseUser != null) { - initBaseUser.init(); + if (serverProperties.getInit() == null || serverProperties.getInit().getUser()) { + // 创建用户 + if (initBaseUser != null) { + initBaseUser.init(); + } } - // 初始化环境变量 EnvManager envManager = EnvManager.getInstance(); envManager.setEnvDao(envDao);