关于 IDEA 中 Mybatis Mapper 自动注入警告的解决方案
2021-09-20 21:41
1141 查看
前言
@Autowired默认情况下要求依赖对象必须存在,而
IDEA对于
Mybatis接口的注入是无法理解的,被认为该对象是
null,虽然代码能正常运行,但有警告总归膈应
解决方案
为 @Autowired 注解设置 required = false
- 设置
required = false
后,不强制该对象在Spring
容器中,可以允许为null
@Autowired(required = false) private UserMapper userMapper;
用@Resource替换@Autowired
@Resource private UserMapper userMapper;
在Mapper接口上添加@Repository注解
@Repository public interface UserMapper extends Mapper<User> { }
使用Lombok - @RequiredArgsConstructor注解
@RequiredArgsConstructor
会为final
的属性产生一个构造函数。
@RestController @RequestMapping("/user") @RequiredArgsConstructor(onConstructor = @__(@Autowired)) public class UserController { private final UserMapper userMapper; }
- 生成的源码如下:
@RestController @RequestMapping({"/user"}) public class UserController { @Autowired private final UserMapper userMapper; @Autowired public UserController(final UserMapper userMapper) { this.userMapper = userMapper; } }
相关文章推荐
- 关于idea 与Mybatis自动扫描注册mapper bean的在IDE中提示无法自动注入的解决方案
- 关于IDEA自动重置LanguageLevel和JavaCompiler版本的问题解决方案分享
- [置顶] 关于Idea基于maven创建springMvc项目中配置文件自动扫描找不到base-package问题
- 关于cocos2dx客户端程序的自动更新解决方案
- 关于在git新建分支后IntelliJ IDEA不会自动刷新分支问题解决
- 第一次用idea写SSM框架的项目就遇到自动注入失败的问题
- 关于SpringBoot bean无法注入的问题(与文件包位置有关)改变自动扫描的包
- 关于SpringBoot bean无法注入的问题(与文件包位置有关)改变自动扫描的包
- 去掉 Idea 中注入 Mapper 警告的方法
- 关于IDEA中maven整合mybatis+spring+springMVC项目中mapper文件找不到问题的解决方案(org.apache.ibatis.binding.BindingExcepti
- 关于在Myeclipse下,tomcat重启自动进入debug模式的解决方案
- 关于Spring/SpringBoot在静态工具类中注入Service的解决方案
- 关于非Spring管理下的Bean通过反射在newInstance()下的自动注入问题
- 关于SpringBoot bean无法注入的问题(与文件包位置有关)改变自动扫描的包
- 关于SpringBoot bean无法注入的问题(与文件包位置有关)改变自动扫描的包
- 关于spring boot自动注入出现Consider defining a bean of type 'xxx' in your configuration问题解决方案
- 关于 Spring new出来的对象 与自动注入对象
- 电商项目(二十四)项目初始化(idea的注入和自动编译配置)
- 关于Ibatis 的自动防止SQL 注入
- 关于spring boot自动注入出现Consider defining a bean of type 'xxx' in your configuration问题解决方案