在休眠中调用AES_ENCRYPT函数

时间:2010-10-26 08:37:38

标签: hibernate

如何在hibernate中执行此查询?

SELECT AES_ENCRYPT('admin','password')

1 个答案:

答案 0 :(得分:2)

使用Native SQL Query当然应该可行。或者,如果你想使用HQL,应该可以扩展MySQL方言并注册函数(未经测试):

registerFunction("aes_encrypt", new StandardSQLFunction("aes_encrypt", Hibernate.STRING) )
registerFunction("aes_decrypt", new StandardSQLFunction("aes_decrypt", Hibernate.STRING) )

显然,在这两种情况下,这都不是便携式的。

根据您的确切需求,还有Jasypt UserTypes(尽管Jasypt网站似乎已经停止/死亡?)