java jpa字段加密解密
公司有个需求,人员身份证号码入库时需要加密,取出时需要解密。由于系统中没有设计加密解密方式,所以需业务中单独处理。
之前考虑加拦截器,后来发现需求不会很大,这种方式太复杂没有必要。
首先添加一个类,处理加密解密操作。
public class EncryptConverter implements AttributeConverter<String, String> {
/**
* 加密.
*/
@Override
public String convertToDatabaseColumn(String text) {
// ... 加解密实现
if(StringUtil.isEmpty(text)){
return "";
}else{
return SecurityUtil.doEncrypt(text);
}
}
/**
* 解密.
*/
@Override
public String convertToEntityAttribute(String s) {
// ... 加解密实现
if(StringUtil.isEmpty(s)){
return "";
}else{
return SecurityUtil.doDecrypt(s);
}
}
}
然后在相应的实体中需要加密的字段上添加注解
@Convert(converter = EncryptConverter.class)
这样就完成了。
java jpa字段加密解密相关推荐
- Java常见的加密解密
Java常见的加密解密 不可逆加密 介绍 应用场景 一致性验证 MD5 可以为文件传输场景中,提供文件的一致性验证. 例如,文件服务器预先提供一个 MD5 校验值,用户下载完文件以后,用 MD5 算法 ...
- 条理清晰的入门:使用Java实现RSA加密解密
条理清晰的入门:使用Java实现RSA加密解密 什么是RSA 使用Java 需要导入的头文件 生成公钥.私钥 进行加密解密 密钥的存储 密文的存储.读取 什么是RSA 翻一下以前的密码学笔记,找到了! ...
- php与java的des加密解密
与第三方接口对接des加密.解密,第三方提供java的des加密解密demo,特记录PHP与java加密解密. import javax.crypto.*; import javax.crypto.s ...
- java 文件进行加密解密,java 对文件加密解密,该如何解决
java 对文件加密解密 本帖最后由 Hong_1993 于 2014-09-03 10:51:35 编辑 我现在想做一个基于spring mvc 模式的 实现对 文件或目录文件 的加解密(de ...
- java 3des_如何用Java进行3DES加密解密 java实现3des加密解密教程
3des,全称为3DESede或TripleDES,中文解释为是三重数据加密,用户可以通过通过对DES算法进行改进,针对每个数据块进行三次DES加密,下面小编为你带来java实现3des加密解密教程! ...
- Spring-Web - 数据库 字段加密 解密
在工作中,为了保证数据安全,需要对数据库字段进行加解密,之前工作中就遇到了这种情况,因为线上数据库有很多的人都有权限,运维,账务,运营(通过后台系统查看),出口太多了,但有用户向我们平台举报,说有 ...
- oracle实现sha加密解密,oracle部分字段加密解密 实现模糊搜索
数据库部分字段加密 实现该字段模糊查询 解决方案:从数据库层面 对改字段进行解密 是目前最为方便的 而oracle可以支持将java类带入到oracle从而调用对应的方法. 基本步骤: 编写好对应的加 ...
- java php aes加密解密_php aes 加密解密可与java对接
php aes 加密解密可与java对接 博主:liu1693 发表时间:2017-02-23 16:52:27 浏览量:100 class Encrypt{ //加密方法 public static ...
- java 实现 DES加密 解密算法
DES算法的入口参数有三个:Key.Data.Mode.其中Key为8个字节共64位,是DES算法的工作密钥:Data也为8个字节64位,是要被加密或被解密的数据:Mode为DES的工作方式,有两种: ...
最新文章
- js 常用倒计时功能:
- vscode中 解决格式化后将单引号变双引号
- 上海建桥学院linux网络管理实验报告,上海建桥学院信息技术系《操作系统(Linux).PDF...
- ZOJ 3204 Connect them 继续MST
- python根据ip获取地理位置_使用python根据ip获取目标地理位置信息
- SpringBoot + MyBatis 之 Hello World
- (01)C++之设计模式演变
- DOM2和DOM3读书笔记
- java 三维全景_三维全景虚拟现实技术具有三大特点
- 计算机组织与体系结构课程实验心得体会
- [Sencha ExtJS amp; Touch] 在Sencha(Extjs/Touch)应用程序中使用plugins(插件)和mixins(混入)...
- 冉宝的每日一题--8月6日、8月7日--今天想学会拓扑排序
- 运用Python爬虫爬取一个美女网址,爬取美女图
- Striped64 深入源码解析
- python的分布式爬虫框架
- Redis list分页功能
- DSRC通信协议标准
- django-registration
- iOS 中的渲染框架:CALayer 是显示的基础,存储 bitmap
- 杂项-绘图工具:思维导图