删除无用的Startup,改为由CommonStartup统一处理初始化操作

This commit is contained in:
wanggeng888 2021-06-15 17:04:10 +08:00
parent b4ff18d8dc
commit f66cc21eb2
5 changed files with 91 additions and 55 deletions

View File

@ -12,6 +12,11 @@ package ink.wgink.interfaces.init;
**/
public interface IInitBaseMenu {
/**
* 初始化
*
* @return
*/
void init();
}

View File

@ -0,0 +1,17 @@
package ink.wgink.interfaces.init;
/**
* When you feel like quitting. Think about why you started
* 当你想要放弃的时候想想当初你为何开始
*
* @ClassName: IInitBaseUser
* @Description: 创建用户
* @Author: wanggeng
* @Date: 2021/6/15 4:29 下午
* @Version: 1.0
*/
public interface IInitBaseUser {
void init();
}

View File

@ -1,6 +1,8 @@
package ink.wgink.common.startup;
import ink.wgink.interfaces.init.IInitBaseMenu;
import ink.wgink.interfaces.init.IInitBaseTable;
import ink.wgink.interfaces.init.IInitBaseUser;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.boot.ApplicationArguments;
import org.springframework.boot.ApplicationRunner;
@ -22,14 +24,30 @@ import java.util.Map;
@Component
public class CommonStartup implements ApplicationRunner {
@Autowired
private ApplicationContext applicationContext;
private IInitBaseMenu initBaseMenu;
private IInitBaseUser initBaseUser;
public CommonStartup(ApplicationContext applicationContext, IInitBaseMenu initBaseMenu, IInitBaseUser initBaseUser) {
this.applicationContext = applicationContext;
this.initBaseMenu = initBaseMenu;
this.initBaseUser = initBaseUser;
}
@Override
public void run(ApplicationArguments args) throws Exception {
// 建表
Map<String, IInitBaseTable> initBaseTableMap = applicationContext.getBeansOfType(IInitBaseTable.class);
for (Map.Entry<String, IInitBaseTable> kv : initBaseTableMap.entrySet()) {
kv.getValue().createTable();
}
// 初始化菜单
if (initBaseMenu != null) {
initBaseMenu.init();
}
// 创建用户
if (initBaseUser != null) {
initBaseUser.init();
}
}
}

View File

@ -1,4 +1,4 @@
package ink.wgink.module.menu.startup;
package ink.wgink.module.menu.init;
import ink.wgink.interfaces.app.IAppSignBaseService;
import ink.wgink.interfaces.article.IArticleCheckService;
@ -6,22 +6,21 @@ import ink.wgink.interfaces.config.ISystemConfigCheckService;
import ink.wgink.interfaces.department.IDepartmentCheckService;
import ink.wgink.interfaces.dictionary.IDictionaryCheckService;
import ink.wgink.interfaces.group.IGroupCheckService;
import ink.wgink.interfaces.init.IInitBaseMenu;
import ink.wgink.interfaces.menu.IMenuBaseService;
import ink.wgink.interfaces.permission.IPermissionCheckService;
import ink.wgink.interfaces.position.IPositionCheckService;
import ink.wgink.interfaces.role.IRoleCheckService;
import ink.wgink.interfaces.user.IUserCheckService;
import ink.wgink.interfaces.user.IUserDetailCheckService;
import ink.wgink.pojo.dtos.menu.MenuDTO;
import ink.wgink.module.menu.dao.IMenuDao;
import ink.wgink.pojo.dtos.menu.MenuDTO;
import ink.wgink.util.UUIDUtil;
import ink.wgink.util.date.DateUtil;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.boot.ApplicationArguments;
import org.springframework.boot.ApplicationRunner;
import org.springframework.stereotype.Component;
import org.springframework.stereotype.Service;
import java.util.HashMap;
import java.util.Map;
@ -30,47 +29,57 @@ import java.util.Map;
* When you feel like quitting. Think about why you started
* 当你想要放弃的时候想想当初你为何开始
*
* @ClassName: ServiceMenuStartUp
* @Description: 菜单业务启动
* @ClassName: InitMenu
* @Description: 初始化菜单
* @Author: wanggeng
* @Date: 2021/2/10 1:12 下午
* @Date: 2021/6/15 4:20 下午
* @Version: 1.0
*/
@Component
public class ServiceMenuStartUp implements ApplicationRunner {
public class InitMenu implements IInitBaseMenu {
private static final Logger LOG = LoggerFactory.getLogger(ServiceMenuStartUp.class);
@Autowired
private static final Logger LOG = LoggerFactory.getLogger(InitMenu.class);
private IMenuDao menuDao;
@Autowired(required = false)
private IDictionaryCheckService dictionaryCheckService;
@Autowired(required = false)
private ISystemConfigCheckService systemConfigCheckService;
@Autowired(required = false)
private IUserCheckService userCheckService;
@Autowired(required = false)
private IDepartmentCheckService departmentCheckService;
@Autowired(required = false)
private IGroupCheckService groupCheckService;
@Autowired(required = false)
private IPositionCheckService positionCheckService;
@Autowired(required = false)
private IPermissionCheckService permissionCheckService;
@Autowired(required = false)
private IRoleCheckService roleCheckService;
@Autowired(required = false)
private IUserDetailCheckService userDetailCheckService;
@Autowired(required = false)
private IAppSignBaseService appSignBaseService;
@Autowired(required = false)
private IArticleCheckService articleCheckService;
@Override
public void run(ApplicationArguments args) throws Exception {
initMenu();
public InitMenu(IMenuDao menuDao,
IDictionaryCheckService dictionaryCheckService,
ISystemConfigCheckService systemConfigCheckService,
IUserCheckService userCheckService,
IDepartmentCheckService departmentCheckService,
IGroupCheckService groupCheckService,
IPositionCheckService positionCheckService,
IPermissionCheckService permissionCheckService,
IRoleCheckService roleCheckService,
IUserDetailCheckService userDetailCheckService,
IAppSignBaseService appSignBaseService,
IArticleCheckService articleCheckService) {
this.menuDao = menuDao;
this.dictionaryCheckService = dictionaryCheckService;
this.systemConfigCheckService = systemConfigCheckService;
this.userCheckService = userCheckService;
this.departmentCheckService = departmentCheckService;
this.groupCheckService = groupCheckService;
this.positionCheckService = positionCheckService;
this.permissionCheckService = permissionCheckService;
this.roleCheckService = roleCheckService;
this.userDetailCheckService = userDetailCheckService;
this.appSignBaseService = appSignBaseService;
this.articleCheckService = articleCheckService;
}
private void initMenu() {
@Override
public void init() {
Map<String, Object> params = new HashMap<>(20);
String gmt = DateUtil.getTime();
params.put("gmtCreate", gmt);

View File

@ -1,17 +1,15 @@
package ink.wgink.service.user.startup;
package ink.wgink.service.user.init;
import ink.wgink.service.user.dao.IUserAdjustmentDao;
import ink.wgink.service.user.dao.IUserDao;
import ink.wgink.interfaces.init.IInitBaseUser;
import ink.wgink.pojo.dtos.user.UserDTO;
import ink.wgink.service.user.dao.IUserDao;
import ink.wgink.util.date.DateUtil;
import org.apache.commons.codec.digest.DigestUtils;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.boot.ApplicationArguments;
import org.springframework.boot.ApplicationRunner;
import org.springframework.security.crypto.password.PasswordEncoder;
import org.springframework.stereotype.Component;
import org.springframework.stereotype.Service;
import java.util.HashMap;
import java.util.Map;
@ -20,34 +18,26 @@ import java.util.Map;
* When you feel like quitting. Think about why you started
* 当你想要放弃的时候想想当初你为何开始
*
* @ClassName: ServiceUserStartUp
* @Description: 用户业务
* @ClassName: InitUser
* @Description: 创建用户
* @Author: wanggeng
* @Date: 2021/2/5 8:59 下午
* @Date: 2021/6/15 4:30 下午
* @Version: 1.0
*/
@Component
public class ServiceUserStartUp implements ApplicationRunner {
private static final Logger LOG = LoggerFactory.getLogger(ServiceUserStartUp.class);
public class InitUser implements IInitBaseUser {
@Autowired
private static final Logger LOG = LoggerFactory.getLogger(InitUser.class);
private IUserDao userDao;
@Autowired
private IUserAdjustmentDao userAdjustmentDao;
@Autowired
private PasswordEncoder passwordEncoder;
@Override
public void run(ApplicationArguments args) throws Exception {
// initTable();
public InitUser(IUserDao userDao, PasswordEncoder passwordEncoder) {
this.userDao = userDao;
this.passwordEncoder = passwordEncoder;
}
/**
* 建表
*/
private void initTable() {
LOG.debug("创建 sys_user 表");
userDao.createTable();
@Override
public void init() {
LOG.debug("检查 admin 是否存在");
Map<String, Object> params = new HashMap<>(2);
params.put("userUsername", "admin");
@ -67,8 +57,5 @@ public class ServiceUserStartUp implements ApplicationRunner {
params.put("isDelete", 0);
userDao.save(params);
}
LOG.debug("创建 sys_user_adjustment 表");
userAdjustmentDao.createTable();
}
}