为了账号安全,请及时绑定邮箱和手机立即绑定

@Autowired应该怎么用?

@Autowired应该怎么用?

慕森卡 2019-03-23 19:14:55
好像一般书上都是这么用的@Autowiredprivate UserRepository userRepository;我写的时候运行是没问题的,但是IntelliJ会标红,说找不到bean什么的看Spring.io的源码的时候发现人家是这么写的private UserRepository userRepository;    @Autowired    public UserService(UserRepository userRepository) {        this.userRepository = userRepository;    }写在构造方法上的,新手表示不解,应该怎么写,求指教
查看完整描述

5 回答

?
三国纷争

TA贡献1804条经验 获得超7个赞

如果是mybatisdubbo这类框架,由于其bean提供方式有点不同,所以IDEA的静态检查并不能感知到bean被注入了,所以显示红色波浪线,关掉这个提示就好了。


查看完整回答
反对 回复 2019-04-19
?
富国沪深

TA贡献1790条经验 获得超9个赞

Spring bean通过@Autowired注入,spring auto scan配置,在编辑情况下,无法找不到对应的bean,于是提示找不到对应bean的错误。

但build项目是能正常运行的。

可在File -- Settings -- Inspections。在Spring Model -- Autowring for Bean Class 中,

将Severity的级别由之前的error改成warning或者直接取消提醒。


查看完整回答
反对 回复 2019-04-19
?
BIG阳

TA贡献1859条经验 获得超6个赞

Spring注入的方式有多种,可以写在field上,可以写在setter方法上,可以写在constructor上。
你使用的方式是写在了field上,你看到的是写在了constructor上

查看完整回答
反对 回复 2019-04-19
?
一只斗牛犬

TA贡献1784条经验 获得超2个赞

你的写法是没错的,找不到bean的话,可能是配置的问题,在applicationContext.xml里需要有下面的配置语句:

<context:component-scan base-package="需要自动扫描的包" />


查看完整回答
反对 回复 2019-04-19
  • 5 回答
  • 0 关注
  • 1604 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信