Spring JPA ColumnTransformer 从 application.properties 文件中读取值

Fra*_*ank 6 java spring hibernate spring-data-jpa spring-boot

我正在使用 hibernate 注释@ColumnTransformer来利用 MySQL 数据加密,但是,我不想(实际上我不能)将密码硬编码到代码中,相反,我想从application.properties文件中加载密码, 样例如下:

@NotBlank
@Column(name = "phone_numbers", columnDefinition = "LONGBLOB")
@ColumnTransformer(
        read="AES_DECRYPT(phone_numbers, '${mms.encryption.key}')",
        write="AES_ENCRYPT(?, '${mms.encryption.key}')")
private String phoneNumbers;```
Run Code Online (Sandbox Code Playgroud)

mms.encryption.key是在进入application.properties

mms.encryption.key=mypassword

但似乎这个行不通。做这个的最好方式是什么?

我在这里找到了类似的帖子,但我不确定 2018 年是否有人有更好的解决方案。