Spring自动装配空指针异常[重复]

Posted

技术标签:

【中文标题】Spring自动装配空指针异常[重复]【英文标题】:Spring autowire null pointer exception [duplicate] 【发布时间】:2017-10-22 02:15:25 【问题描述】:

xml配置-

<bean id="DS" class="org.springframework.jdbc.datasource.DriverManagerDataSource" >

        <property name="driverClassName" value="$DB.DRIVERCLASS" />
        <property name="url" value="$TABLEMAINT.URL" />       
        <property name="username" value="$TABLEMAINT.USER" />
        <property name="password" value="$TABLEMAINT.PASSWORD" />
    </bean>

@Component
class AbcDAO
 @Autowired
private DriverManagerDataSource DS;
   public void getConnection()
      System.out.println("DS - "+DS..getConnection());
   

datasource DS.getConnection 获取空指针异常。

自动装配不起作用。

有什么解决办法吗?

【问题讨论】:

阅读 Java 命名约定。属性名称应以小写字符开头,因此您的“DS”必须为“ds” @pvpkiran 没有。这是我的道课 你如何实例化 ABS 类?它是弹簧管理的 bean 吗? 是的..我这里没有复制完整的代码 同时添加相关代码 【参考方案1】:

ABC 不是由 spring 管理的。

要使@Autowired 注释起作用,您必须使用以下任一注释该类:

@Component
@Service
@Controller
@Repository

或在 XML 配置中定义

【讨论】:

我应该从这些中使用哪一个? 它不是我的控制器或服务类 @yuvaツ 它是一个存储库吗?如果不使用'@Component' 没有。也尝试使用组件.. 不工作 查看代码更新..

以上是关于Spring自动装配空指针异常[重复]的主要内容,如果未能解决你的问题,请参考以下文章

Spring Security 3.1 + JPA - 空指针异常

使用服务的Spring安全性不会自动赋予依赖关系并提供空指针异常

SpringBoot项目中创建redisUtils,在调用redisUtils的静态方法时,报空指针异常

服务类Spring引导中的空指针异常[重复]

当我为JAX WS类添加@Autowire注释时,它在spring boot中给出了空指针异常错误

SpringBug记录 -- java.lang.NullPointerException在Spring单元测试中遇到的空指针异常及依赖注入异常总结