【发布时间】:2016-04-04 07:18:16
【问题描述】:
【问题讨论】:
-
注入的 bean 需要有一个类,原始类型没有。但是,使用自动拆箱,您可以随意将它们作为对应的 Object 注入:Boolean、Integer、Double..
标签: spring java spring dependency-injection spring-ioc
【问题讨论】:
标签: spring java spring dependency-injection spring-ioc
这是因为Autowiring 只是在 ApplicationContext 中引用现有 bean 的替代方法。它需要 bean 或 class,原语不是类,它与 Object 不同。这就是为什么你不能Autowire 原始类型。您可以使用原始类型(如 Integer、Double 等)的包装类来对此类类型使用自动装配,因为您现在指的是 类。
【讨论】:
自动装配不能用于注入原始值和字符串值。它仅供参考。注入的引用需要有一个对象类。您可以使用包装器。即整数,布尔值。
对于原始的,你可以像spring-bean-primitive-properties-when-using-component-and-autowired那样做
【讨论】:
您可以自动装配包装类,而不是自动装配原始类型
对于 int 类型 --> 使用 Integer。
【讨论】:
Autowiring 只是在 ApplicationContext 中引用 现有 bean 的一种替代方法。
原语不像 bean 那样存在于应用程序上下文中
它需要一个实例/bean,而不是原语。
【讨论】: