gpt4 book ai didi

java - 如何使用 Hibernate 读取加密的数据库字段

转载 作者:行者123 更新时间:2023-12-01 01:07:23 27 4
gpt4 key购买 nike

我正在处理一个需要加密一些数据库表字段的项目。这样做的方法是使用 Microsoft SQL Server 内置的加密/解密功能:

ENCRYPTBYPASSPHRASE('PASSPHRASE',‘text’)

DECRYPTBYPASSPHRASE ('12',password)

所以要插入数据,SQL 将是这样的:
insert into login_details(uid,username,password) values(1,'smith',EncryptByPassPhrase('12',’XXX’))

要读取数据,SQL 将是这样的:
select uid,username, DECRYPTBYPASSPHRASE ('12',password) as Password from login_details

所以我的问题是如何使用现有的 OR 映射在 Hibernate 中使用它?我正在使用 JPA 注释。
有没有一种简单的方法可以使用 JPA 注释来做到这一点?

最佳答案

听起来您正在寻找 org.hibernate.annotations.ColumnTransformer

@Column( name = "pswd" )
@ColumnTransformer( write="EncryptByPassPhrase('12',?)", read="DECRYPTBYPASSPHRASE ('12',pswd)" )
public String getPassword() {
return password;
}

关于java - 如何使用 Hibernate 读取加密的数据库字段,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5871343/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com