mirror of
https://gitee.com/dromara/RuoYi-Vue-Plus.git
synced 2026-09-21 02:25:56 +08:00
获得类的加密字段集合时增加判断clazz如果是接口,内部类,匿名类就直接返回
This commit is contained in:
parent
a4c0941c8d
commit
ae34211d82
@ -63,9 +63,9 @@ public class EncryptorAutoConfiguration {
|
|||||||
for (org.springframework.core.io.Resource resource : resources) {
|
for (org.springframework.core.io.Resource resource : resources) {
|
||||||
ClassMetadata classMetadata = new CachingMetadataReaderFactory().getMetadataReader(resource).getClassMetadata();
|
ClassMetadata classMetadata = new CachingMetadataReaderFactory().getMetadataReader(resource).getClassMetadata();
|
||||||
Class<?> clazz = Resources.classForName(classMetadata.getClassName());
|
Class<?> clazz = Resources.classForName(classMetadata.getClassName());
|
||||||
Set<Field> safeFieldSetFromClazz = getSafeFieldSetFromClazz(clazz);
|
Set<Field> encryptFieldSet = getEncryptFieldSetFromClazz(clazz);
|
||||||
if(CollectionUtil.isNotEmpty(safeFieldSetFromClazz)) {
|
if(CollectionUtil.isNotEmpty(encryptFieldSet)) {
|
||||||
fieldCache.put(clazz, safeFieldSetFromClazz);
|
fieldCache.put(clazz, encryptFieldSet);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@ -76,8 +76,12 @@ public class EncryptorAutoConfiguration {
|
|||||||
}
|
}
|
||||||
|
|
||||||
// 获得一个类的加密字段集合
|
// 获得一个类的加密字段集合
|
||||||
private Set<Field> getSafeFieldSetFromClazz(Class<?> clazz) {
|
private Set<Field> getEncryptFieldSetFromClazz(Class<?> clazz) {
|
||||||
Set<Field> fieldSet = new HashSet<>();
|
Set<Field> fieldSet = new HashSet<>();
|
||||||
|
// 判断clazz如果是接口,内部类,匿名类就直接返回
|
||||||
|
if (clazz.isInterface() || clazz.isMemberClass() || clazz.isAnonymousClass()) {
|
||||||
|
return fieldSet;
|
||||||
|
}
|
||||||
while (clazz != null) {
|
while (clazz != null) {
|
||||||
Field[] fields = clazz.getDeclaredFields();
|
Field[] fields = clazz.getDeclaredFields();
|
||||||
fieldSet.addAll(Arrays.asList(fields));
|
fieldSet.addAll(Arrays.asList(fields));
|
||||||
|
|||||||
Loading…
Reference in New Issue
Block a user