mybatis项目,在线程中调用Service和DAO层的方法时会报空指针
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了mybatis项目,在线程中调用Service和DAO层的方法时会报空指针相关的知识,希望对你有一定的参考价值。
写了一个简单的爬虫程序,,在将爬取的数据调用Service的方法传值时报空指针
线程中直接调用spring注解就是会报空指针的,Spring 注解@PostConstruct的问题,这个是在bean实例化之前执行的,解决方法有1、把数据库连接写成静态方法来调取;
AbstractApplicationContext ac=
new ClassPathXmlApplicationContext("applicationContext.xml");
xxMapper mapper = ac.getBean(xxMapper.class);
之后就可以用mapper了
2、写个回调函数;在回调函数中执行dao层方法; 参考技术A 建议使用参数 时候 进行非空判断,避免空指针异常。追问
值不是空的!将值传入到Service和DAO层的方法中时会报空指针
追答看控制台打印的信息, 会报哪一行出现空指针的。 可以看那个对象是空的~
追问对象时有值的,,不是空的!
参考技术B 楼主,异步调用空指针问题怎么解决的。 参考技术C spring依赖注入没写对?追问我也是这样想的,,,但是其它地方都是对的,就线程里面那个不对,,难道是线程的注入和其它不一样
本回答被提问者采纳mybatis
spring boot 中使用mybatis
1.yml文件中读取xml配置文件
2.xml配置,使用mybatis的 mapper namespace对应上边定义的Dao
3.controller调用service service调用dao
以上是关于mybatis项目,在线程中调用Service和DAO层的方法时会报空指针的主要内容,如果未能解决你的问题,请参考以下文章
spring和mybatis整合怎么将事务在service层关闭?使用xml配置