公司有个需求,人员身份证号码入库时需要加密,取出时需要解密。由于系统中没有设计加密解密方式,所以需业务中单独处理。

之前考虑加拦截器,后来发现需求不会很大,这种方式太复杂没有必要。

首先添加一个类,处理加密解密操作。

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字段加密解密相关推荐

  1. Java常见的加密解密

    Java常见的加密解密 不可逆加密 介绍 应用场景 一致性验证 MD5 可以为文件传输场景中,提供文件的一致性验证. 例如,文件服务器预先提供一个 MD5 校验值,用户下载完文件以后,用 MD5 算法 ...

  2. 条理清晰的入门:使用Java实现RSA加密解密

    条理清晰的入门:使用Java实现RSA加密解密 什么是RSA 使用Java 需要导入的头文件 生成公钥.私钥 进行加密解密 密钥的存储 密文的存储.读取 什么是RSA 翻一下以前的密码学笔记,找到了! ...

  3. php与java的des加密解密

    与第三方接口对接des加密.解密,第三方提供java的des加密解密demo,特记录PHP与java加密解密. import javax.crypto.*; import javax.crypto.s ...

  4. java 文件进行加密解密,java 对文件加密解密,该如何解决

    java 对文件加密解密 本帖最后由 Hong_1993 于 2014-09-03 10:51:35 编辑 我现在想做一个基于spring mvc 模式的 实现对  文件或目录文件   的加解密(de ...

  5. java 3des_如何用Java进行3DES加密解密 java实现3des加密解密教程

    3des,全称为3DESede或TripleDES,中文解释为是三重数据加密,用户可以通过通过对DES算法进行改进,针对每个数据块进行三次DES加密,下面小编为你带来java实现3des加密解密教程! ...

  6. Spring-Web - 数据库 字段加密 解密

      在工作中,为了保证数据安全,需要对数据库字段进行加解密,之前工作中就遇到了这种情况,因为线上数据库有很多的人都有权限,运维,账务,运营(通过后台系统查看),出口太多了,但有用户向我们平台举报,说有 ...

  7. oracle实现sha加密解密,oracle部分字段加密解密 实现模糊搜索

    数据库部分字段加密 实现该字段模糊查询 解决方案:从数据库层面 对改字段进行解密 是目前最为方便的 而oracle可以支持将java类带入到oracle从而调用对应的方法. 基本步骤: 编写好对应的加 ...

  8. java php aes加密解密_php aes 加密解密可与java对接

    php aes 加密解密可与java对接 博主:liu1693 发表时间:2017-02-23 16:52:27 浏览量:100 class Encrypt{ //加密方法 public static ...

  9. java 实现 DES加密 解密算法

    DES算法的入口参数有三个:Key.Data.Mode.其中Key为8个字节共64位,是DES算法的工作密钥:Data也为8个字节64位,是要被加密或被解密的数据:Mode为DES的工作方式,有两种: ...

最新文章

  1. js 常用倒计时功能:
  2. vscode中 解决格式化后将单引号变双引号
  3. 上海建桥学院linux网络管理实验报告,上海建桥学院信息技术系《操作系统(Linux).PDF...
  4. ZOJ 3204 Connect them 继续MST
  5. python根据ip获取地理位置_使用python根据ip获取目标地理位置信息
  6. SpringBoot + MyBatis 之 Hello World
  7. (01)C++之设计模式演变
  8. DOM2和DOM3读书笔记
  9. java 三维全景_三维全景虚拟现实技术具有三大特点
  10. 计算机组织与体系结构课程实验心得体会
  11. [Sencha ExtJS amp; Touch] 在Sencha(Extjs/Touch)应用程序中使用plugins(插件)和mixins(混入)...
  12. 冉宝的每日一题--8月6日、8月7日--今天想学会拓扑排序
  13. 运用Python爬虫爬取一个美女网址,爬取美女图
  14. Striped64 深入源码解析
  15. python的分布式爬虫框架
  16. Redis list分页功能
  17. DSRC通信协议标准
  18. django-registration
  19. iOS 中的渲染框架:CALayer 是显示的基础,存储 bitmap
  20. 杂项-绘图工具:思维导图

热门文章

  1. 找出3的最大倍数的整数集合
  2. 如何在一年内赚50万?
  3. 罗马仕php30坏了,罗马仕充电宝的插口坏了,应该怎么修?
  4. 本地代码如何提交到远程,克隆的和不克隆,两种方法
  5. NOI OpenJudge 2722 和数
  6. superset详解(四)--权限分类
  7. 25KHZ 50W/60W超声波换能器振子设计
  8. Leetcode题目练习总结(持续更新......)
  9. 拓扑排序和关键路径的图形化显示
  10. 数字芯片是怎样设计出来的?