提交 546e3d3a authored 作者: liyinqiao's avatar liyinqiao

判断基本数据类型

上级 7e4dfe8d
...@@ -22,9 +22,12 @@ public class MapCryptHandler implements CryptHandler{ ...@@ -22,9 +22,12 @@ public class MapCryptHandler implements CryptHandler{
Object value = entry.getValue(); Object value = entry.getValue();
if(encryptKeyList.contains(key.toLowerCase())){ if(encryptKeyList.contains(key.toLowerCase())){
encryptParam.put(key,CryptHandlerFactory.getCryptHandler(value).encrypt(value,cryptProperties,mapid)); encryptParam.put(key,CryptHandlerFactory.getCryptHandler(value).encrypt(value,cryptProperties,mapid));
}else if(value != null && !(value instanceof String)){ }else if(value != null && !isPrimitiveType(value)){
// liyinqiao Map 的 value 非是普通字符串时 需要对内部结构做加密 // liyinqiao Map 的 value 非是普通字符串时 需要对内部结构做加密
Object enCodeParam = CryptHandlerFactory.getCryptHandler(value).encrypt(value,cryptProperties,mapid); Object enCodeParam = value;
try {
enCodeParam = CryptHandlerFactory.getCryptHandler(value).encrypt(value,cryptProperties,mapid);
}catch (Exception e){}
encryptParam.put(key,enCodeParam); encryptParam.put(key,enCodeParam);
}else{ }else{
encryptParam.put(key,value); encryptParam.put(key,value);
...@@ -34,6 +37,30 @@ public class MapCryptHandler implements CryptHandler{ ...@@ -34,6 +37,30 @@ public class MapCryptHandler implements CryptHandler{
return encryptParam; return encryptParam;
} }
/**
* @param
* @return
* @author <a href="mailto:liyinqiao@gtmap.cn">liyinqiao</a>
* @version 1.0, 2024/3/29
* @description 判断是否数据基本数据类型
*/
private static boolean isPrimitiveType(Object obj){
if(obj instanceof String){
return true;
}
if(obj instanceof Number){
return true;
}
if(obj instanceof Date){
return true;
}
if(obj instanceof java.sql.Date){
return true;
}
return false;
}
private List<String> getMapEncryptKeys(Map map, String mapid, CryptProperties cryptProperties) { private List<String> getMapEncryptKeys(Map map, String mapid, CryptProperties cryptProperties) {
List<String> result = new ArrayList<String>(); List<String> result = new ArrayList<String>();
if(StringUtils.isBlank(mapid)){//没有任何情况下,会有没有id的map被加密,即使是全局加解密 if(StringUtils.isBlank(mapid)){//没有任何情况下,会有没有id的map被加密,即使是全局加解密
......
Markdown 格式
0%
您添加了 0 到此讨论。请谨慎行事。
请先完成此评论的编辑!
注册 或者 后发表评论