解决Intellij IDEA中Mybatis Mapper自动注入警告

摘要:
然而UserMapper这个接口是Mybatis的,IDEA理解不了。而@Autowired注解,默认情况下要求依赖对象必须存在。)然后在网上还看到了其他的方法,但是并不实用:方法2:为@Autowired注解设置required=false使用@Autowired注解时,若希望允许null值,可设置required=false,像这样:1@Autowired2privateUserMapperuserMapper;这样就不会有警告了。

问题描述:

解决Intellij IDEA中Mybatis Mapper自动注入警告第1张

首先说明自己出现上述原因是因为在mapper接口上方用的是@mapper标签,如果用@Repository标签替换可以解决这个问题

(idea可以理解Spring的上下文。然而 UserMapper 这个接口是Mybatis的,IDEA理解不了。 而 @Autowired 注解,默认情况下要求依赖对象(也就是 userMapper )必须存在。而IDEA认为这个对象的实例/代理是个null,所以就友好地给个提示。)

然后在网上还看到了其他的方法,但是并不实用:

方法2:

@Autowired 注解设置required = false

使用 @Autowired 注解时,若希望允许null值,可设置required = false,像这样:

1 @Autowired(required = false)
2 private UserMapper userMapper;

这样就不会有警告了。原因很好理解:IDEA认为userMapper是个null,给了警告;加上required = false后,使用 @Autowired 注解不再去校验userMapper是否存在了。也就不会有警告了。

方法3:

@Resource 替换 @Autowired

像这样:

1 @Resource
2 private UserMapper userMapper;

总结:后两种方法也可以解决上面的问题,但是如果项目中有大量的地方需要改动,会相当麻烦,所以推荐开始的那种方法.

免责声明:文章转载自《解决Intellij IDEA中Mybatis Mapper自动注入警告》仅用于学习参考。如对内容有疑问,请及时联系本站处理。

上篇NestJS WebSocket 开始使用Cmd不能运行,窗口闪一下就消失下篇

宿迁高防,2C2G15M,22元/月;香港BGP,2C5G5M,25元/月 雨云优惠码:MjYwNzM=

相关文章

idea安装完成后点击没反应 打不开

1 执行bin目录下的脚本启动查看具体的报错信息 PS E:Program FilesJetBrainsIntelliJ IDEA 2019.3.2in> .idea.bat OpenJDK 64-Bit Server VM warning: Option UseConcMarkSweepGC was deprecated in version 9....

SSM 三大框架系列:Spring 5 + Spring MVC 5 + MyBatis 3.5 整合(附源码)

之前整理了一下新版本的 SSM 三大框架,这篇文章是关于它的整合过程和项目源码,版本号分别为:Spring 5.2.2.RELEASE、SpringMVC 5.2.2.RELEASE、MyBatis 3.5.2。 背景介绍 ssm-demo 是我发布到 GitHub 上的第一个开源项目,该项目开发时应该是 2016 年底的时候,之后是选择将这个项目开源到...

mybatis一对多分页查询

今天遇到一个问题,当用户关联角色查询翻页时,如果一个用户有多个角色,会认为是多条记录,页面加载的时候就会发现记录数不对。 为了解决这个问题,我打算分两次查询,第一次只按分页查询出当前页应该展示的用户id列表,然后根据这个idlist去关联查询用户和角色的所有要用到的字段 java public Map<String, Object> selec...

MyBatis(三)全局配置文件 之 databaseProvider 数据库厂商标识

databaseIdProvider环境一、databaseIdProvider 属性 MyBatis可以根据不同的数据库厂商执行不同的语句 <databaseIdProvider type="DB_VENDOR"> <!-- 为不同的数据库厂商起别名 --> <property name="M...

springBoot集成Mybatis generator

一、引入jar包 <!--boot整合mybatis的包 --> <dependency> <groupId>org.mybatis.spring.boot</groupId> <artifactId>mybatis-s...

Idea 中的快捷键(mac)

Mac键盘符号和修饰键说明 ⌘ Command ⇧ Shift ⌥ Option ⌃ Control ↩︎ Return/Enter ⌫ Delete ⌦ 向前删除键(Fn+Delete) ↑ 上箭头 ↓ 下箭头 ← 左箭头 → 右箭头 ⇞ Page Up(Fn+↑) ⇟ Page Down(Fn+↓) Home Fn...