如何在hibernate中执行此查询?
SELECT AES_ENCRYPT('admin','password')
答案 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网站似乎已经停止/死亡?)