小编use*_*996的帖子

我想知道Hibernate是否有办法执行ColumnTransformer的编程配置?

我目前有一个这样的字段注释:

ColumnTransformer(
          read="AES_DECRYPT(C_first_name, 'yourkey')",
          write="AES_ENCRYPT(?, 'yourkey')")
public String getFirstName() {
   return firstName;
}
Run Code Online (Sandbox Code Playgroud)

这适用于Mysql数据库,但我需要这个配置是可选的,因为我们的应用程序可以使用另一个数据库(HsqlDB),具体取决于启动参数.所以我需要的是只有在使用特定的启动参数时才使用ColumnTransformer(并且没有用于HsqlDB的ColumnTransformer,它不能使用"AES_ENCRYPT")

有人可以帮我弄这个吗 ?

hibernate

6
推荐指数
2
解决办法
1348
查看次数

解码包含百分比(%)的字符串

我正在尝试解码String包含(%)百分比的,它抛出异常

Exception:URLDecoder: Illegal hex characters in escape (%) pattern - For input string: "%&"
Run Code Online (Sandbox Code Playgroud)

我的代码:

public class DecodeCbcMsg {

    public static void main(String[] args) throws UnsupportedEncodingException 
    {
        String msg="Hello%%&&$$";
        String strTMsg = URLDecoder.decode(msg,"UTF-8");
        System.out.println(strTMsg);
    }
Run Code Online (Sandbox Code Playgroud)

java

5
推荐指数
1
解决办法
5027
查看次数

AES加密方法相当于MySQL aes_encrypt()函数

我想写一个AES加密方法,它应该等同于mysql aes_encrypt.

我尝试写但是它不正确,因为mysql也没有给出正确的数据.

我该怎么做才能使它正确?

Cipher cipher = Cipher.getInstance("AES");
cipher.init(Cipher.ENCRYPT_MODE, keySpec); 
byte[] encryptedTextBytes = cipher.doFinal(message .getBytes("UTF-8")); 
String k = new String(encryptedTextBytes); 
System.out.println("KKKKK"+k);
Run Code Online (Sandbox Code Playgroud)

java mysql encryption aes

2
推荐指数
1
解决办法
3570
查看次数

标签 统计

java ×2

aes ×1

encryption ×1

hibernate ×1

mysql ×1