Idea工具中使用Mapper对象有红线的解决方法

 更新时间:2022年09月22日 09:35:54   作者:慢慢来_  
mapper对象在service层有红线,项目可以正常使用,想知道为什么会出现这种情,接下来通过本文给大家介绍下Idea工具中使用Mapper对象有红线的问题,需要的朋友可以参考下

背景:

IDEA开发工具,springboot +mybatis项目

(这个是不需要改的,也不算是问题,因为项目并不会报错,只是作者好奇找了下问题,并记录一下)

问题描述

mapper对象在service层有红线,项目可以正常使用,想知道为什么会出现这种情

原因分析:

@Autowired 默认是要求注解对象不为空

@Autowired 默认是要求注解对象不为空,IDEA在自动检测时认为mapper的实例是null,所以飘红提醒一下。实际使用@MapperScan,是在项目启动时才会去扫描mapper文件,并生成代理类,所以项目运行也不会报错。

这里想到@Service注解,在controller层中使用的时候就没有报红,是因为含有@Component,

@Component作用就是把注解的类实例化到spring容器中。

解决方案

这里提供4中解决方式

1、修改idea 配置

下图是通过点击标红的提示进入的,也可以从菜单上进入:file -> settings-> editor->inspections->autowiring for bean class 取消勾选,关闭 autowiring 校验。

2、@Autowired 修改为 @Autowired(required = false)

3、@Autowired 修改为 @Resource

@Resource 不校验是否为空

4、mapper 类上添加 @Repository 或者 @Component 或者lombok 中的@RequiredArgsConstructor

本质是加了 @Component 注册到项目中,满足IDEA的检验

参考链接:

idea 注入mapper报错报红的几种解决方案

IDEA中mapper注入报红的问题(springboot

到此这篇关于Idea工具中使用Mapper对象有红线的文章就介绍到这了,更多相关idea 使用mapper红线内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

相关文章

  • SpringBoot实现文件上传与下载功能的示例代码

    SpringBoot实现文件上传与下载功能的示例代码

    文件上传与下载是Web应用开发中常用的功能之一。接下来我们将讨论如何在Spring Boot的Web应用开发中,如何实现文件的上传与下载,感兴趣的可以了解一下
    2022-06-06
  • SpringMVC实现Validation校验过程详解

    SpringMVC实现Validation校验过程详解

    这篇文章主要介绍了SpringMVC实现Validation校验过程详解,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下
    2019-11-11
  • Mybatis CachingExecutor二级缓存使用示例详解

    Mybatis CachingExecutor二级缓存使用示例详解

    这篇文章主要介绍了 Mybatis的CachingExecutor与二级缓存使用示例详解,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪
    2023-09-09
  • 如何处理maven仓库中后缀LastUpdated文件

    如何处理maven仓库中后缀LastUpdated文件

    这篇文章主要介绍了如何处理maven仓库中后缀LastUpdated文件,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下
    2020-04-04
  • SpringBoot中使用@Value注解注入详解

    SpringBoot中使用@Value注解注入详解

    这篇文章主要介绍了SpringBoot中的@Value注入详解,在SpringBoot中,@Value注解可以注入一些字段的普通属性,并且会自动进行类型转换,本文对这些类型进行总结,需要的朋友可以参考下
    2023-08-08
  • Mybatis实现动态增删改查功能的示例代码

    Mybatis实现动态增删改查功能的示例代码

    这篇文章主要介绍了Mybatis实现动态增删改查功能的示例代码,本文给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2021-04-04
  • 详解Java的Proxy动态代理机制

    详解Java的Proxy动态代理机制

    Java有两种代理方式,一种是静态代理,另一种是动态代理。对于静态代理,其实就是通过依赖注入,对对象进行封装,不让外部知道实现的细节。很多 API 就是通过这种形式来封装的
    2021-06-06
  • SpringBoot 部署到服务器上的方法

    SpringBoot 部署到服务器上的方法

    下面小编就为大家分享一篇SpringBoot 部署到服务器上的方法,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2018-02-02
  • java中怎样表示圆周率

    java中怎样表示圆周率

    这篇文章主要介绍了java中怎样表示圆周率问题,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2023-05-05
  • Java中GUI工具包AWT和Swing用法介绍

    Java中GUI工具包AWT和Swing用法介绍

    这篇文章介绍了Java中GUI工具包AWT和Swing用法,文中通过示例代码介绍的非常详细。对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2022-01-01

最新评论