使用Spring将布尔bean创建转换为布尔值

AHu*_*ist 5 java spring dependency-injection boolean

所以,我在我的一个java文件中有这样的东西:

@Resource(name = "initializationCache")
Boolean initializationCache;
Run Code Online (Sandbox Code Playgroud)

在配置文件中,我有这个:

<bean id="initializationCache" class="java.lang.Boolean">
    <constructor-arg value="${initialization.cache}" />
</bean>
Run Code Online (Sandbox Code Playgroud)

我将如何使用原始布尔值来完成这项工作?

axt*_*avt 9

在Spring 3中,您可以在没有中间bean的情况下使用@Value:

@Value("${initialization.cache}")
boolean initializationCache;
Run Code Online (Sandbox Code Playgroud)


Grz*_*zki 2

我想一种方法是声明一个Boolean类型的 setter 并让它将值分配给boolean类型的字段,即

boolean initializationCache;

@Resource(name = "initializationCache")
public void setInitializationCache(Boolean b) {
  this.initializationCache = b;
}
Run Code Online (Sandbox Code Playgroud)

不过我还没有测试过。