Hibernate对字段进行加密,运行时解密
在需加密字段上增加如下注解 @Column(columnDefinition= "BLOB", name="address" )@ColumnTransformer(read = "CAST(AES_DECRYPT(address, '$*^@!#') as char(1000))", write = "AES_ENCRYPT(?, '$*^@!#')" )public String getAddress() {return address; } 说明: @ColumnTransformer:用于对数据进行sql层处理 AES_DECRYPT:解密,第一个参数为列名,第二个参数为密钥,解密之后在mysql中应该也是bolb所以需要加上CAST来强转为java可以直接接收的char类型 AES_ENCRYPT:加密,加密之后是blob类型所以数据库中需使用blob来存储