fix 修复 加解密拦截器 同一对象多次处理问题

This commit is contained in:
疯狂的狮子li 2023-03-08 17:53:08 +08:00
parent 0b761fe52b
commit f55fa60f4d
2 changed files with 4 additions and 10 deletions

View File

@ -16,10 +16,7 @@ import org.apache.ibatis.plugin.*;
import java.lang.reflect.Field;
import java.sql.Statement;
import java.util.List;
import java.util.Map;
import java.util.Properties;
import java.util.Set;
import java.util.*;
/**
* 出参解密拦截器
@ -60,7 +57,7 @@ public class MybatisDecryptInterceptor implements Interceptor {
return;
}
if (sourceObject instanceof Map<?, ?> map) {
map.values().forEach(this::decryptHandler);
new HashSet<>(map.values()).forEach(this::decryptHandler);
return;
}
if (sourceObject instanceof List<?> list) {

View File

@ -19,10 +19,7 @@ import org.apache.ibatis.plugin.Signature;
import java.lang.reflect.Field;
import java.sql.PreparedStatement;
import java.util.List;
import java.util.Map;
import java.util.Properties;
import java.util.Set;
import java.util.*;
/**
* 入参加密拦截器
@ -69,7 +66,7 @@ public class MybatisEncryptInterceptor implements Interceptor {
return;
}
if (sourceObject instanceof Map<?, ?> map) {
map.values().forEach(this::encryptHandler);
new HashSet<>(map.values()).forEach(this::encryptHandler);
return;
}
if (sourceObject instanceof List<?> list) {