Java 使用Spring将布尔bean创建转换为布尔
因此,我的一个java文件中有类似的内容:Java 使用Spring将布尔bean创建转换为布尔,java,spring,dependency-injection,boolean,Java,Spring,Dependency Injection,Boolean,因此,我的一个java文件中有类似的内容: @Resource(name=“initializationCache”) 布尔初始化缓存; 在配置文件中,我有以下内容: 我将如何使用基本布尔值来实现这一点 在Spring3中,您可以使用@Value: @Value("${initialization.cache}") boolean initializationCache; 我想一种方法是声明一个Boolean类型的setter,并让它将值赋给Boolean类型的字段,即 boolean
@Resource(name=“initializationCache”)
布尔初始化缓存;
在配置文件中,我有以下内容:
我将如何使用基本布尔值来实现这一点 在Spring3中,您可以使用
@Value
:
@Value("${initialization.cache}")
boolean initializationCache;
我想一种方法是声明一个
Boolean
类型的setter,并让它将值赋给Boolean
类型的字段,即
boolean initializationCache;
@Resource(name = "initializationCache")
public void setInitializationCache(Boolean b) {
this.initializationCache = b;
}
不过我还没有测试过它。基本上就是这样,自动装箱会将
布尔值
解装箱到布尔值
。但是如果由于某种原因配置没有正确拉入,我更愿意将initializationCache默认为false。现在,我相信它将是空的。如果您在Java代码中将Boolean
更改为Boolean
,会发生什么情况?@Grzegorz我得到这个:原因:org.springframework.beans.factory.BeanNotOfRequiredTypeException:名为'initializationCache'的Bean必须是[Boolean]类型,但实际上是[Java.lang.Boolean]类型有没有办法不去春天3号?谢谢。我投了更高的票,因为如果我使用3.0+,这将是一个很好的答案。是的,这可以工作,尽管我想我想做一个空检查。事实上,我发现了一个不同的解决方案,它更适合我的特定应用程序,但这个答案似乎是3.0版本之前Spring的最佳解决方案。