1 可以参考源码: https://gitee.com/Zetting/my-gather/tree/master/springboot-aop-encrypt-field
基于上面的源码。我在我的实际项目中这样操作: 【源码里的加密算法在liunx上面有问题。自行更换加密算法 20210902补】
拷贝代码 EncryptField ,EncryptMethod EncryptFieldAop ,.AseUtil
前面2个类,拷过去就行,第3个类需要改动下代码:
@Pointcut("@annotation(XXXXX.EncryptMethod)") 32行,括号里的路径改为拷贝后的 EncryptMethod 路径
2:在我自己的工程里的改动,拿 PersonVerifyInfo 类做测试
对银行卡号和身份证号做加密存储,实体类需要密文存储的字段加注解 @EncryptField
新写一个新增和查询的方法验证:
实现类需要加注解 @EncryptMethod
单元测试代码:
效果截图:
插入数据效果图,最后一条是加密存储的,上面的数据都是历史明文存储的数据
根据主键id查询
----------------------------------------------------------------------------
至此完成了存储加解密存取。不建议对解密字段作为功能查询筛选字段;另外 还没测试联表查询,目前 单表单条数据操作是ok的。