Commit a3606b89 authored by 胡文斌's avatar 胡文斌

构建实体类之前执行数据库升级语句

parent 91046688
This diff is collapsed.
package com.archser.aserver.common.config; package com.archser.aserver.common.config;
import com.alibaba.druid.filter.stat.StatFilter; import com.alibaba.druid.filter.stat.StatFilter;
import com.archser.aserver.common.config.plugins.DBUpgrade;
import com.archser.aserver.common.config.plugins.RedisConfig; import com.archser.aserver.common.config.plugins.RedisConfig;
import com.archser.aserver.controller.*; import com.archser.aserver.controller.*;
import com.archser.aserver.interceptor.JwtInterceptor; import com.archser.aserver.interceptor.JwtInterceptor;
import com.archser.aserver.itask.GoodSync; import com.archser.aserver.itask.GoodSync;
import com.archser.aserver.model._MappingKit; import com.archser.aserver.model._MappingKit;
import com.archser.aserver.service.DBService;
import com.archser.aserver.util.SharedDisk; import com.archser.aserver.util.SharedDisk;
import com.archser.aserver.websocket.MessageWebSocket; import com.archser.aserver.websocket.MessageWebSocket;
import com.jfinal.config.*; import com.jfinal.config.*;
...@@ -167,6 +167,7 @@ public class MainConfig extends JFinalConfig { ...@@ -167,6 +167,7 @@ public class MainConfig extends JFinalConfig {
arp.setContainerFactory(new CaseInsensitiveContainerFactory(true)); arp.setContainerFactory(new CaseInsensitiveContainerFactory(true));
arp.setDialect(DialectFactory.getDialect()); arp.setDialect(DialectFactory.getDialect());
arp.addSqlTemplate("oracle.sql"); arp.addSqlTemplate("oracle.sql");
arp.setTableBuilderHandler(new DBUpgrade());
/******** 在此添加数据库 表-Model 映射 *********/ /******** 在此添加数据库 表-Model 映射 *********/
// 如果使用了JFinal Model 生成器 生成了BaseModel 把下面注释解开即可 // 如果使用了JFinal Model 生成器 生成了BaseModel 把下面注释解开即可
_MappingKit.mapping(arp); _MappingKit.mapping(arp);
...@@ -209,16 +210,6 @@ public class MainConfig extends JFinalConfig { ...@@ -209,16 +210,6 @@ public class MainConfig extends JFinalConfig {
*/ */
@Override @Override
public void onStart() { public void onStart() {
String dbType = p.get("dbType");
if (dbType == null || "".equals(dbType.trim())) {
System.out.println("数据库配置文件中dbType不能为空值");
return;
}
dbType = dbType.trim();
dbType = dbType.toUpperCase();
String configPath = PathKit.getRootClassPath() + "/DBUpdate/";
DBService dbService = new DBService();
dbService.upgrade(configPath, dbType);
new GoodSync().run(); new GoodSync().run();
} }
......
package com.archser.aserver.common.config.plugins;
import com.archser.aserver.service.DBService;
import com.jfinal.kit.PathKit;
import com.jfinal.kit.PropKit;
import com.jfinal.plugin.activerecord.ITableBuilderHandler;
/**
* 执行数据库升级语句
* @Auther: huwenbin
* @Date: 2021/3/19 10:06
*/
public class DBUpgrade implements ITableBuilderHandler {
@Override
public void beforeBuilder() {
String dbType = PropKit.get("dbType");
if (dbType == null || "".equals(dbType.trim())) {
System.out.println("数据库配置文件中dbType不能为空值");
throw new RuntimeException("数据库配置文件中dbType不能为空值");
}
dbType = dbType.trim();
dbType = dbType.toUpperCase();
String configPath = PathKit.getRootClassPath() + "/DBUpdate/";
DBService dbService = new DBService();
dbService.upgrade(configPath, dbType);
}
}
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment