当前有这样的一个需求,在系统第一次使用时,需要配置数据库连接,判断连接的有效性(拦截器),通过后初始化sql脚本,现在疑惑点在于数据库连接有效性如何判断?前提都是建立在没有数据库没有表情况下(会抛出异常),在config中如何判断呢?
public void configPlugin(Plugins config) {
this.loadPropertyFile("db.ini");
DruidPlugin druidPlugin = new DruidPlugin(this.getProperty("jdbcUrl"),
this.getProperty("username"), this.getProperty("password"));
config.add(druidPlugin);
AutoTableBindPlugin autoTableBindPlugin = new AutoTableBindPlugin(
druidPlugin, TableNameStyle.LOWER);
for (String jar : PLUGINJARS) {
autoTableBindPlugin.addJar(jar);
}
autoTableBindPlugin.setShowSql(true);
config.add(autoTableBindPlugin);
}
直接上代码:
public class MyJFinalConfig extends JFinalConfig {
public void configConstant(Constants me){}
public void configHandler(Handlers me){}
public void configRoute(Routes me){}
public void configPlugin(Plugins me){}
// 在configPlugin(...)方法给 arp 赋下值
private ActiveRecordPlugin arp;
public void afterJFinalStart() {
if (DbKit.getConnection() != null)
// 证明连接有效
// sql 初始化脚本可以在这里做
Db.update(sql);
// 初始化完成后,记得重新启动一下 ActiveRecordPlugin
arp.stop();
arp.start();
}
版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。
你好,我是AI助理
可以解答问题、推荐解决方案等
评论
全部评论 (0)