提交 a48c140b authored 作者:  狄熙卜's avatar 狄熙卜

模板预配置V2,与配置模板新增getSqlSingleEncryptFileds、getSqlSingleDecryptFileds、getGlobalDisa…

模板预配置V2,与配置模板新增getSqlSingleEncryptFileds、getSqlSingleDecryptFileds、getGlobalDisableMapFields、getGlobalDisableEntityFields四个方法
上级 801e6a63
......@@ -351,36 +351,71 @@ public class DbEncryptXmlConfig {
String simpleName = config.getClass().getSimpleName().replace("Config", "").toLowerCase();
//当配置中包含预置加密字段时,才读预置字段
if(baseConfigOptions.contains(simpleName)){
//预置的全局加解密字段(正向配置)
if(CollectionUtils.isNotEmpty(config.getGlobalEnableFields())){
if(CollectionUtils.isEmpty(globalEnableFields)){
globalEnableFields = new ArrayList<String>();
}
globalEnableFields.addAll(config.getGlobalEnableFields());
}
//预置的sql加解密字段(正向配置)
if(CollectionUtils.isNotEmpty(config.getSqlFileds())){
if(CollectionUtils.isEmpty(sqlFileds)){
sqlFileds = new ArrayList<Map>();
}
sqlFileds.addAll(config.getSqlFileds());
}
//预置的sql加密字段(正向配置)
if(CollectionUtils.isNotEmpty(config.getSqlEncryptFileds())){
if(CollectionUtils.isEmpty(sqlEncryptFileds)){
sqlEncryptFileds = new ArrayList<Map>();
}
sqlEncryptFileds.addAll(config.getSqlEncryptFileds());
}
//预置的sql解密字段(正向配置)
if(CollectionUtils.isNotEmpty(config.getSqlDecryptFileds())){
if(CollectionUtils.isEmpty(sqlDecryptFileds)){
sqlDecryptFileds = new ArrayList<Map>();
}
sqlDecryptFileds.addAll(config.getSqlDecryptFileds());
}
//预置的实体加解密字段(正向配置)
if(CollectionUtils.isNotEmpty(config.getEntityFileds())){
if(CollectionUtils.isEmpty(entityFileds)){
entityFileds = new ArrayList<Map>();
}
entityFileds.addAll(config.getEntityFileds());
}
//单一string作为参数加密(正向配置)
if(CollectionUtils.isNotEmpty(config.getSqlSingleEncryptFileds())){
if(CollectionUtils.isEmpty(sqlSingleEncryptFileds)){
sqlSingleEncryptFileds = new ArrayList<String>();
}
sqlSingleEncryptFileds.addAll(config.getSqlSingleEncryptFileds());
}
//单一string作为返回值解密(正向配置)
if(CollectionUtils.isNotEmpty(config.getSqlSingleDecryptFileds())){
if(CollectionUtils.isEmpty(sqlSingleDecryptFileds)){
sqlSingleDecryptFileds = new ArrayList<String>();
}
sqlSingleDecryptFileds.addAll(config.getSqlSingleDecryptFileds());
}
//全局加密字段在sql中的反向配置(配置在其中的不进行加解密处理) 反向配置
//不需要做特殊处理逻辑,因为在判断是否为加解密字段时,判断顺序为:是否为全局加解密字段-》是否为全局非加解密字段-》是否为加解密字段,所以是否为加解密字段本身优先级高于全局配置,不需要在此处根据已有的是否为加解密字段配置调整是否为全局非加解密字段
if(CollectionUtils.isNotEmpty(config.getGlobalDisableMapFields())){
if(CollectionUtils.isEmpty(globalDisableMapFields)){
globalDisableMapFields = new ArrayList<Map>();
}
globalDisableMapFields.addAll(config.getGlobalDisableMapFields());
}
//全局姐姐们字段在entity中的反向配置(配置在其中的不进行加解密处理) 反向配置
//不做特殊逻辑处理,原因同上
if(CollectionUtils.isNotEmpty(config.getGlobalDisableEntityFields())){
if(CollectionUtils.isEmpty(globalDisableEntityFields)){
globalDisableEntityFields = new ArrayList<Map>();
}
globalDisableEntityFields.addAll(config.getGlobalDisableEntityFields());
}
}
}
}
......
......@@ -8,9 +8,24 @@ import java.util.Map;
* 出于统一优先级设计考虑,目前设计预置字段只进行添加处理,没有排除例外字段的功能
*/
public interface BaseConfig {
//全局加密字段 正向
List<String> getGlobalEnableFields();
//sql加解密字段 正向
List<Map> getSqlFileds();
//sql加密字段 正向
List<Map> getSqlEncryptFileds();
//sql解密字段 正向
List<Map> getSqlDecryptFileds();
//实体加解密字段 正向
List<Map> getEntityFileds();
//单一string作为参数加密 正向
List<String> getSqlSingleEncryptFileds();
//单一string作为返回值解密 正向
List<String> getSqlSingleDecryptFileds();
//全局加密字段在sql中的反向配置(配置在其中的不进行加解密处理) 反向
List<Map> getGlobalDisableMapFields();
//全局加密字段在entity中的反向配置(配置在其中的不进行加解密处理) 反向
List<Map> getGlobalDisableEntityFields();
}
......@@ -3,6 +3,7 @@ package cn.gtmap.bdcdj.core.encrypt.config;
import org.springframework.stereotype.Component;
import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
......@@ -36,4 +37,31 @@ public class QlrConfig implements BaseConfig {
public List<Map> getEntityFileds() {
return null;
}
@Override
public List<String> getSqlSingleEncryptFileds() {
return null;
}
@Override
public List<String> getSqlSingleDecryptFileds() {
return null;
}
@Override
public List<Map> getGlobalDisableMapFields() {
return null;
}
@Override
public List<Map> getGlobalDisableEntityFields() {
//测试代码
// List<Map> result = new ArrayList<Map>();
// Map map = new HashMap<String,Object>();
// map.put("entity","GdQlr");
// map.put("field","qlr");
// result.add(map);
// return result;
return null;
}
}
......@@ -34,4 +34,24 @@ public class QlrlxdhConfig implements BaseConfig{
public List<Map> getEntityFileds() {
return null;
}
@Override
public List<String> getSqlSingleEncryptFileds() {
return null;
}
@Override
public List<String> getSqlSingleDecryptFileds() {
return null;
}
@Override
public List<Map> getGlobalDisableMapFields() {
return null;
}
@Override
public List<Map> getGlobalDisableEntityFields() {
return null;
}
}
......@@ -34,4 +34,24 @@ public class ZlConfig implements BaseConfig{
public List<Map> getEntityFileds() {
return null;
}
@Override
public List<String> getSqlSingleEncryptFileds() {
return null;
}
@Override
public List<String> getSqlSingleDecryptFileds() {
return null;
}
@Override
public List<Map> getGlobalDisableMapFields() {
return null;
}
@Override
public List<Map> getGlobalDisableEntityFields() {
return null;
}
}
Markdown 格式
0%
您添加了 0 到此讨论。请谨慎行事。
请先完成此评论的编辑!
注册 或者 后发表评论