springboot @Autowired 空指针异常问题处理

问题描述:

Service服务类中使用@Autowired申明了一个成员变量a,使用a时出现空指针异常

java.lang.NullPointerException: null

问题代码:

AdUserLoginServiceImpl apUserLoginServiceImpl = new AdUserLoginServiceImpl();

问题原因:

由于使用Spring的IOC容器,因此当我采用new方法来实例化服务对象后,实例中的成员变量并不能够被Spring所管理并自动装载。

解决方法:

方法一、

不要使用 new 方法实例化对象,采用@Autowired注释

方法二、

在服务类中申明静态成员变量来维持引用

    /* 维持引用的静态变量 */
    private static AdUserLoginServiceImpl proxy;

    /* 本地静态变量维持引用 */
    @PostConstruct
    public void init (){
        proxy = this;
    }

使用方法

// 查询用户
AdUser dbUser = proxy.adUserMapper.selectByUserName(user.getName());
原文地址:https://www.cnblogs.com/hakulamatata/p/14239983.html