修改如下:

1.调整执行者的目录结构从fw移动到common中
2.修改命名
This commit is contained in:
mayuanfei 2023-01-17 17:52:38 +08:00
parent f688f1570e
commit 79d90d0d73
12 changed files with 21 additions and 23 deletions

View File

@ -12,7 +12,6 @@ import lombok.Data;
* @date 2023-01-17 08:31 * @date 2023-01-17 08:31
*/ */
@Data @Data
@Builder
public class EncryptContext { public class EncryptContext {
/** /**
* 安全秘钥 * 安全秘钥

View File

@ -1,4 +1,4 @@
package com.ruoyi.framework.encrypt.encryptor; package com.ruoyi.common.encrypt.encryptor;
import com.ruoyi.common.encrypt.EncryptContext; import com.ruoyi.common.encrypt.EncryptContext;
import com.ruoyi.common.encrypt.IEncryptor; import com.ruoyi.common.encrypt.IEncryptor;

View File

@ -1,4 +1,4 @@
package com.ruoyi.framework.encrypt.encryptor; package com.ruoyi.common.encrypt.encryptor;
import cn.hutool.core.util.ArrayUtil; import cn.hutool.core.util.ArrayUtil;
import cn.hutool.core.util.ObjectUtil; import cn.hutool.core.util.ObjectUtil;

View File

@ -1,4 +1,4 @@
package com.ruoyi.framework.encrypt.encryptor; package com.ruoyi.common.encrypt.encryptor;
import cn.hutool.core.codec.Base64; import cn.hutool.core.codec.Base64;
import com.ruoyi.common.encrypt.EncryptContext; import com.ruoyi.common.encrypt.EncryptContext;

View File

@ -1,4 +1,4 @@
package com.ruoyi.framework.encrypt.encryptor; package com.ruoyi.common.encrypt.encryptor;
import cn.hutool.core.codec.Base64; import cn.hutool.core.codec.Base64;
import cn.hutool.core.util.ObjectUtil; import cn.hutool.core.util.ObjectUtil;

View File

@ -1,4 +1,4 @@
package com.ruoyi.framework.encrypt.encryptor; package com.ruoyi.common.encrypt.encryptor;
import cn.hutool.core.codec.Base64; import cn.hutool.core.codec.Base64;

View File

@ -1,4 +1,4 @@
package com.ruoyi.framework.encrypt.encryptor; package com.ruoyi.common.encrypt.encryptor;
import cn.hutool.core.util.ObjectUtil; import cn.hutool.core.util.ObjectUtil;
import cn.hutool.core.util.StrUtil; import cn.hutool.core.util.StrUtil;

View File

@ -14,27 +14,27 @@ public enum AlgorithmType {
/** /**
* base64 * base64
*/ */
BASE64("com.ruoyi.framework.encrypt.encryptor.Base64Encryptor"), BASE64("com.ruoyi.common.encrypt.encryptor.Base64Encryptor"),
/** /**
* aes * aes
*/ */
AES("com.ruoyi.framework.encrypt.encryptor.AesEncryptor"), AES("com.ruoyi.common.encrypt.encryptor.AesEncryptor"),
/** /**
* rsa * rsa
*/ */
RSA("com.ruoyi.framework.encrypt.encryptor.RsaEncryptor"), RSA("com.ruoyi.common.encrypt.encryptor.RsaEncryptor"),
/** /**
* sm2 * sm2
*/ */
SM2("com.ruoyi.framework.encrypt.encryptor.Sm2Encryptor"), SM2("com.ruoyi.common.encrypt.encryptor.Sm2Encryptor"),
/** /**
* sm4 * sm4
*/ */
SM4("com.ruoyi.framework.encrypt.encryptor.Sm4Encryptor"); SM4("com.ruoyi.common.encrypt.encryptor.Sm4Encryptor");
private final String clazz; private final String clazz;
} }

View File

@ -15,7 +15,7 @@ import java.util.stream.Collectors;
* @author 老马 * @author 老马
* @date 2023-01-12 11:07 * @date 2023-01-12 11:07
*/ */
public class EncryptedFieldsCacheHelper { public class EncryptedFieldsCache {
private static final Map<Class<?>, Set<Field>> ENCRYPTED_FIELD_CACHE = new ConcurrentHashMap<>(); private static final Map<Class<?>, Set<Field>> ENCRYPTED_FIELD_CACHE = new ConcurrentHashMap<>();
public static Set<Field> get(Class<?> sourceClazz) { public static Set<Field> get(Class<?> sourceClazz) {

View File

@ -39,12 +39,11 @@ public class EncryptorManager {
if (encryptorMap.containsKey(encryptorKey)) { if (encryptorMap.containsKey(encryptorKey)) {
return encryptorMap.get(encryptorKey); return encryptorMap.get(encryptorKey);
} }
EncryptContext encryptContext = EncryptContext.builder() EncryptContext encryptContext = new EncryptContext();
.password(properties.getPassword()) encryptContext.setPassword(properties.getPassword());
.privateKey(properties.getPrivateKey()) encryptContext.setPrivateKey(properties.getPrivateKey());
.publicKey(properties.getPublicKey()) encryptContext.setPublicKey(properties.getPublicKey());
.encode(properties.getEncode()) encryptContext.setEncode(properties.getEncode());
.build();
Class<IEncryptor> clazz = null; Class<IEncryptor> clazz = null;
try { try {
clazz = ClassLoaderUtil.loadClass(properties.getAlgorithm().getClazz()); clazz = ClassLoaderUtil.loadClass(properties.getAlgorithm().getClazz());

View File

@ -57,13 +57,13 @@ public class MybatisDecryptInterceptor implements Interceptor {
if (sourceObject instanceof List) { if (sourceObject instanceof List) {
// 判断第一个元素是否含有注解如果没有直接返回提高效率 // 判断第一个元素是否含有注解如果没有直接返回提高效率
Object firstItem = ((List<?>) sourceObject).get(0); Object firstItem = ((List<?>) sourceObject).get(0);
if (CollectionUtil.isEmpty(EncryptedFieldsCacheHelper.get(firstItem.getClass()))) { if (CollectionUtil.isEmpty(EncryptedFieldsCache.get(firstItem.getClass()))) {
return; return;
} }
((List<?>) sourceObject).forEach(this::decryptHandler); ((List<?>) sourceObject).forEach(this::decryptHandler);
return; return;
} }
Set<Field> fields = EncryptedFieldsCacheHelper.get(sourceObject.getClass()); Set<Field> fields = EncryptedFieldsCache.get(sourceObject.getClass());
try { try {
for (Field field : fields) { for (Field field : fields) {
field.set(sourceObject, this.decryptField(String.valueOf(field.get(sourceObject)), field)); field.set(sourceObject, this.decryptField(String.valueOf(field.get(sourceObject)), field));

View File

@ -68,13 +68,13 @@ public class MybatisEncryptInterceptor implements Interceptor {
if (sourceObject instanceof List) { if (sourceObject instanceof List) {
// 判断第一个元素是否含有注解如果没有直接返回提高效率 // 判断第一个元素是否含有注解如果没有直接返回提高效率
Object firstItem = ((List<?>) sourceObject).get(0); Object firstItem = ((List<?>) sourceObject).get(0);
if (CollectionUtil.isEmpty(EncryptedFieldsCacheHelper.get(firstItem.getClass()))) { if (CollectionUtil.isEmpty(EncryptedFieldsCache.get(firstItem.getClass()))) {
return; return;
} }
((List<?>) sourceObject).forEach(this::encryptHandler); ((List<?>) sourceObject).forEach(this::encryptHandler);
return; return;
} }
Set<Field> fields = EncryptedFieldsCacheHelper.get(sourceObject.getClass()); Set<Field> fields = EncryptedFieldsCache.get(sourceObject.getClass());
try { try {
for (Field field : fields) { for (Field field : fields) {
field.set(sourceObject, this.encryptField(String.valueOf(field.get(sourceObject)), field)); field.set(sourceObject, this.encryptField(String.valueOf(field.get(sourceObject)), field));