最近写了一个爬虫程序,实现通过搜狗微信获取微信公众号内容。首先可以正确获取内容到控制台,但当想把内容存储到数据库时遇到了问题。我把这个爬虫程序放到我已有的一个SpringBoot项目中,这里已有news新闻表的DAO和Service,在项目的Controller或者数据库初始化部分,想要往news表里插入数据,只需要@Autowired NewsDAO或者@Autowired NewsService即可。但在爬虫程序里这么使用却报java.lang.NullPointerException,说明对象没有用具体的类初始化。但在SpringBoot如果使用@Autowired自动注入bean是不需要初始化的啊,那究竟是为什么,怎么解决呢?
刚开始我以为是注解没有扫描到,因为之前和现在项目中都存在一些@Autowired后面的内容下面有红色波浪线提示could not autowire的情况,所以我想着先把这个问题解决了。但是无论是通过这篇文章的方法还是在@Autowired加(required = false),都没有真正的解决问题,只是让编辑器不报这个错误。这时我突然想到,经过上述改动后项目是可以正常运行的,其他地方可以正常插入数据,也就是注解扫描到了。而在爬虫程序中还是报空指针异常错误,所以应该不是这个问题,换一个思路。
这时我受到