1. 基本功能 1. 基本功能
平台支持数据归档功能,满足项目组定期将数据归档的需求。
2. 配置方法 2. 配置方法
配置
- 项目管理-项目初始化-视图级配置:新增一笔记录,选择【配置项类型】为支持数据归档配置,【配置内容】配置不需要归档隐藏的按钮方法名称,方法名称模糊匹配,区分大小写,如果多个要以逗号隔开,平台提供的查询方法默认排除。然后保存并提交数据。
- 项目组需要实现的功能:前端切换数据源的页面及方法,在前端缓存localStorage中存入切换后的数据库名称以及数据库类型(是否为归档库“A”)。界面可以使用平台可视化布局配置,其中切换数据源的方法代码可以参考3. 常用扩展
- 重新生成代码。
- 后台接口实现:如果是Spring-mvc框架,修改application-jdbc.xml配置文件;如果是Spring-boot框架,请直接参考第5步。
4.1. 修改application-jdbc.xml配置文件。
4.1.1. 把原数据源配置改为默认数据源
<bean id="defDataSource" class="com.alibaba.druid.pool.DruidDataSource"
init-method="init" destroy-method="close">
4.1.2. 配置动态数据源。
4.1.3. 配置dynamicSourceService对应的实现类,该实现类由项目组实现。
4.1.4. 在mybatis拦截器上增加dynamicSourceService。
4.2. 动态数据源切换接口实现类。
4.2.1. 实现类需继承com.gillion.platform.framework.core.service.DynamicSourceService
4.3. core-servlet.xml配置动态数据源拦截器。
5. 如果是Spring-boot框架,配置项增加glpaas.dynamic.source.enabled=true
;启动类或公共boot-configuration中加入DynamicSourceService
的实现类。
3. 常用扩展 3.常用扩展
编辑前端切换数据源界面的二次扩展文件Ctr.js,自定义前端切换数据源的方法,以及在前端缓存localStorage中存入切换后的数据库名称以及数据库类型(是否为归档库“A”)。
$scope.onSelectVehicleType = function (item,name) {
if(item.attrs.text == '归档库A'){
localStorage.setItem("sourceType",item.attrs.value);
localStorage.setItem("dataSourceName",item.attrs.text);
}
if(item.attrs.text == '归档库B'){
localStorage.setItem("sourceType","A");
localStorage.setItem("dataSourceName",item.attrs.text);
}
if(item.attrs.text == ''){
localStorage.setItem("sourceType","");
localStorage.setItem("dataSourceName","");
}
$scope.closeMsg();
}