import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;
import com.alibaba.druid.pool.DruidDataSource;
import com.jfinal.kit.Prop;
import com.jfinal.kit.PropKit;
import com.jfinal.plugin.activerecord.ActiveRecordPlugin;
import com.jfinal.plugin.activerecord.CaseInsensitiveContainerFactory;
import com.jfinal.plugin.activerecord.dialect.OracleDialect;
@Configuration
public class XfActiveRecordConfig {
@Bean(initMethod="start", destroyMethod="stop")
public ActiveRecordPlugin xfActiveRecordPlugin() {
DruidDataSource ds = new DruidDataSource();
PropKit.use("db.properties");
Prop p = PropKit.getProp();
ds.setDriverClassName(p.get("db.middle.driverClass"));
ds.setUrl(p.get("db.middle.jdbcUrl"));
ds.setUsername(p.get("db.middle.user"));
ds.setPassword(p.get("db.middle.password"));
ActiveRecordPlugin arp = new ActiveRecordPlugin("middle", ds);
arp.setShowSql(true);
arp.setDialect(new OracleDialect());
// 配置属性名(字段名)大小写不敏感容器工厂,true表示转为小写
arp.setContainerFactory(new CaseInsensitiveContainerFactory(true));
return arp;
}
}
主数据源使用时无需使用use,其它数据源使用时参照ExtDb.use("middle").save("apply_info", record);