@Resource()注解报错

@Resource()注解报错

如果是@Autowired 和 @Qualifier(value) 就可以正常运行,但是如果使用@Resource(name="value") 就报空指针错误

http://img1.sycdn.imooc.com//climg/5e030282098f650b18250825.jpg

http://img1.sycdn.imooc.com//climg/5e03036f094f2cd418260791.jpg

老师,为什么我使用组合的注解就是可以的,但是使用单独的@Resource就会报错

正在回答 回答被采纳积分+1

登陆购买课程后可参与讨论,去登陆

4回答
苏小川 2020-01-01 13:27:16

在pom.xml文件中添加

<dependency>
   <groupId>javax.annotation</groupId>
   <artifactId>javax.annotation-api</artifactId>
   <version>1.2</version>
</dependency>


好帮手慕柯南 2019-12-26 10:57:32

同学你好!

  1.  @Resource(name="studentDaoProxy")和@Autowired @Qualifier("studentDaoProxy")组合是一样的功能

  2. 你的配置文件没有问题,请问你使用的spring、junit、jdk的版本是什么呢?建议你将spring、junit的版本改为来老师的一样,jdk使用1.8测试一下

    http://img1.sycdn.imooc.com//climg/5e04218709a8393c04820335.jpg

如果我的回答解决了你的疑惑,请采纳,祝学习愉快~

  • 提问者 guo_x #1
    spring junit的版本是一样的 只是我使用的jdk的版本是 jdk10
    2019-12-26 11:44:38
  • 好帮手慕柯南 回复 提问者 guo_x #2
    同学你好,这是版本导致的问题,jdk10使用@resource注解装配会失败,jdk12中甚至没有@resource注解了。建议你可以更换一下jdk的版本。祝学习愉快~
    2019-12-26 15:51:02
提问者 guo_x 2019-12-26 09:18:06
好帮手慕柯南 2019-12-25 15:48:47

同学你好!

老师这里测试两种方法都是可以的,请问你两次测试的配置文件相同吗?重新测试一下看一下

如果还是报错,同学的jdk是什么版本呢?建议你贴一下配置文件看看

祝学习愉快~

  • 提问者 guo_x #1
    配置文件是一致的,我已添加上传配置文件截图 请老师帮忙看下有什么错误?还是有resource和Autowired Qualifier两个注解在配置上面有什么区别么
    2019-12-26 09:19:25
问题已解决,确定采纳
还有疑问,暂不采纳

恭喜解决一个难题,获得1积分~

来为老师/同学的回答评分吧

0 星
请稍等 ...
意见反馈 帮助中心 APP下载
官方微信

在线咨询

领取优惠

免费试听

领取大纲

扫描二维码,添加
你的专属老师