gpt4 book ai didi

java - 修剪 jasypt EncryptablePropertyPlaceholderConfigurer 中的尾随空格

转载 作者:行者123 更新时间:2023-12-01 14:15:51 24 4
gpt4 key购买 nike

我们使用 Spring 和 jasypt EncryptablePropertyPlaceholderConfigurer 来读取 application.properties 文件。

如果某些属性值末尾包含空格,有时会出现问题,在使用 @Value(${}) 标记读取值时,我们也会在最终会产生问题。

现在类 EncryptablePropertyPlaceholderConfigurer 是最终类,因此无法扩展,我进行了大量搜索以找出在修剪字符串值周围的空格后是否有任何方法来获取属性。

有人可以建议如何处理这种情况吗?

最佳答案

您可以使用构造函数中传递的自定义 StringEncryptor 创建 EncryptablePropertyPlaceholderConfigurer。在此 CustomStringEncryptor.decrypt() 中执行修剪()。 (在这种情况下,您不知道您正在解密的属性是哪个)

您可以通过委托(delegate)绕过最终:

class CustomStringEncryptor implements StringEncryptor{
private StringEncryptor delegate;

public CustomStringEncryptor(StandardPBEStringEncryptor delegate){
this.delegate = delegate;
}

String decrypt(String encryptedMessage){
String message = this.delegate.decrypt(encryptedMessage);
if(null != message) message = message.trim();
return message;
}
}

关于java - 修剪 jasypt EncryptablePropertyPlaceholderConfigurer 中的尾随空格,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18110970/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com