xm
2024-06-14 722af26bc6fec32bb289b1df51a9016a4935610f
提交 | 用户 | 时间
722af2 1 package com.dl.common.annotation;
X 2
3 import com.dl.common.enums.AlgorithmType;
4 import com.dl.common.enums.EncodeType;
5
6 import java.lang.annotation.*;
7
8 /**
9  * 字段加密注解
10  *
11  * @author 老马
12  */
13 @Documented
14 @Inherited
15 @Target({ElementType.FIELD})
16 @Retention(RetentionPolicy.RUNTIME)
17 public @interface EncryptField {
18
19     /**
20      * 加密算法
21      */
22     AlgorithmType algorithm() default AlgorithmType.DEFAULT;
23
24     /**
25      * 秘钥。AES、SM4需要
26      */
27     String password() default "";
28
29     /**
30      * 公钥。RSA、SM2需要
31      */
32     String publicKey() default "";
33
34     /**
35      * 公钥。RSA、SM2需要
36      */
37     String privateKey() default "";
38
39     /**
40      * 编码方式。对加密算法为BASE64的不起作用
41      */
42     EncodeType encode() default EncodeType.DEFAULT;
43
44 }