几天前,我读了Bear Giles关于2012年使用JPA监听器进行数据库加密的有趣文章。他讨论了对加密解决方案的要求,并提供了JPA监听器的代码示例。 他的主要要求是:
- 提供不影响应用程序的透明加密,
- 能够在部署时添加加密,
- 由两个不同的团队/人员开发应用程序和安全性/加密。
我完全同意他的看法。 但是,经过1.5年的时间和对JPA 2.1的规范更新,JPA侦听器不再是唯一的解决方案。 JPA 2.1引入了类型转换器,可用于创建可能更好的解决方案。
一般信息和设置
该示例期望您具有有关JPA类型转换器的一些基本知识。 如果您想更详细地了解类型转换器,请查看我以前关于JPA 2.1 –如何实现类型转换器的文章 。
以下示例的设置很小。 您只需要与Java EE 7兼容的应用程序服务器。 我用Wildfly 8.0.0.Final包含休眠4.3.2.Final作为JPA实现。