根据弹簧文档,它已被提及
这是设计使然
我想了解这个设计背后可能的想法。
这是因为Autowiring
它只是在 ApplicationContext 中引用现有 bean 的一种替代方法。它需要一个bean或一个类,原语不是一个类,它与 Object 不同。这就是为什么你不能Autowire
原始类型。您可以使用原始类型(如 Integer、Double 等)的包装类来对此类类型使用自动装配,因为您现在指的是一个类。
自动装配不能用于注入原始值和字符串值。它仅供参考。注入的引用需要有一个对象类。您可以使用包装器。即整数,布尔值。
对于原语,您可以像spring-bean-primitive-properties-when-using-component-and-autowired
自动装配只是在 ApplicationContext中引用现有 bean的一种替代方法。
原语不是存在于应用程序上下文中的 bean
它需要一个实例/bean 而不是原语。
除了自动装配原始类型之外,您还可以自动装配类型的包装类int
--> use Integer
。