解决 mapper.xml 文件的 resultType 爆红问题:Cannot resolve symbol ‘xxx‘

news2025/1/21 2:00:15

解决mapper.xml文件的resultType爆红问题:Cannot resolve symbol 'xxx'

  • 1.问题描述
  • 2.问题分析
  • 3.问题解决
    • 3.1 配置注解(推荐)
    • 3.2 配置全类名
    • 3.3 删除插件
  • 4.事件感悟

系统:Win10
JDK:1.8.0_333
IDEA:2022.2.4
SpringBoot:2.7.6

1.问题描述

在一次开发 SpringBoot 项目时,配合使用 MybatisPlus 返回实体类时,配置的 mapper.xml 文件的 resultType 属性爆红,鼠标放上去提示:
Cannot resolve symbol ‘TmsTb01’
如下图所示:
在这里插入图片描述
打开对应的Mapper文件,可以发现对应的方法也是爆红,鼠标放上去提示:
Result type not match for select id=“selectByTime”
srcType:
targetType: com.electric.srm.entity.tms.TmsTb01

如下图所示:
在这里插入图片描述

2.问题分析

这里我查了一下,发现网上有各种各样的可能会导致这个问题,我这里将我这个项目的情况描述下

  • 1. 项目运行没有问题(说明代码都是对的,该配置的都已经配置好了,只是显示的问题)
    比如这里的 type-aliases-package: com.electric.srm.entity 别名扫描我都是配置好了的
  • 2. 没有多余或少插件(这里看到其他人有可能装了什么不该装的插件,或者少了什么插件,我这里都不是)
    比如什么 Lombok 插件我是装了的

3.问题解决

3.1 配置注解(推荐)

在返回实体类上添加一个注解:@Alias(“TmsTb01”),这里可以看到添加之后,resultType就不会爆红了
在这里插入图片描述

3.2 配置全类名

这里我们如果将 resultType 改为全类名,也可以达到消除爆红的效果(已测试),不过这样显得我们配置的别名扫描很笨,所以我就没用这个方案

3.3 删除插件

我看到还有一种方案是,删除 MybatisX 插件,这个插件用起来挺可爱的,我就没考虑这个方案,不过感觉应该有效

4.事件感悟

这次从发现这个问题到处理这个问题,花了我大概两个小时,虽然这个问题不影响项目的正常运行,不过当我看到这些爆红的提示,那是相当的难受,稍微有点强迫症。不过这上面三种解决方案还不是我理想的解决方案,我感觉既然代码能够运行,没有报错,那说明代码就是正确的,为什么会提示红色报错呢。
我感觉大概率是 MybatisX 的问题导致的这个报错问题,希望后面这个插件能够更新处理这个问题,或者有人打脸说不是这个问题,给我一个更好的解决方案。
在这次解决问题的过程中,我也想过有没有可能是依赖的版本问题,或者配置问题,说到底还是学艺不精、功力不厚,希望后面能够不断学习,逐渐成长,遇到 BUG 不要害怕,而是勇敢的面对它,坚持就是胜利,奥利给。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/434546.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

【C++】Qt环境下的五子棋小程序

实现要求 这个程序是一个基于Qt的五子棋游戏,实现了人机对战和双人对战两种游戏模式,提供了基本的棋谱记录和游戏音效功能。程序采用了MVC模式,将数据与界面分离,实现了代码的模块化和可扩展性。主要构建包括三个文件&#xff0c…

Java - 数据结构,哈希表

一、概念 顺序结构以及平衡树中,元素关键码与其存储位置之间没有对应的关系,因此在查找一个元素时,必须要经过关键码的多次比较。顺序查找时间复杂度为O(N),平衡树中为树的高度,即O( ),搜索的效率取决于搜…

Ambari【部署 01】最新版本ambari-2.7.7下载编译打包安装使用(踩坑实录)

Ambari 官网 本次安装的为当前最新版本 2.7.7 文档 。 1.环境及准备 1.1 环境 # 系统 [roottcloud ~]# cat /etc/centos-release CentOS Linux release 7.9.2009 (Core) # JDK [roottcloud ~]# java -version java version "1.8.0_241" Java(TM) SE Runtime Envir…

java模板/策略模式打怪兽

模板&策略模式 实现姿势 我们会从简单到复杂,讲解代码正确的实现姿势,分别为最 Low 方式、常规方式、模板模式和策略模式。 最 Low 方式 假如现在有 3 个奥特曼,都喜欢 “训练,飞翔,打怪兽” public class OldTig…

jsp+java自行车租赁租借和买卖系统

自行车租借和买卖系统 系统包括四个模块。1,系统模块,2,车辆管理模块,3.租借车管理模块,4,买卖车管理模块。 1,系统模块包括: 连接数据库,工作人员登录,退出。 2&#…

《类和对象》(中篇)

本文主要介绍类里面的六大默认成员函数 文章目录 前言类的6个默认成员函数1、构造函数1.1 概念1.2 特性 2、析构函数2.1 概念2.2 特性 3 、拷贝构造函数3.1 概念3.2 特性3.3 使用场景 4、运算符重载4.1 规则4.2 赋值运算符重载 5、const 成员6、取地址与const取地址操作符重载总…

Shiro安全框架简介

一、权限管理 1.1 什么是权限管理 基本上只要涉及到用户参数的系统都要进行权限管理,使用权限管理实现了对用户访问系统的控制,不同的用户访问不同的资源。按照安全规则或者安全策略控制用户访问资源,而且只能访问被授权的资源 权限管理包括认…

学成在线笔记+踩坑(1)——项目思路、架构、父工程和基础工程,Gogs使用

【黑马Java笔记踩坑汇总】JavaSEJavaWebSSMSpringBoot瑞吉外卖SpringCloud黑马旅游谷粒商城学成在线牛客面试题 目录 简历-技术架构 项目预览 后台页面 课程管理 媒资管理页面上传视频 新增课程 课程管理页提交审核 审核员审核后发布课程 前台页面 主页 验证码登录…

uniapp系列-超详细教你在uni-app+vue3里通过web-view组件传递信息打开H5页面写入localstorage并解决兼容性

web-view是什么 web-view 是一个 web 浏览器组件,可以用来承载网页的容器,会自动铺满整个页面(nvue 使用需要手动指定宽高)。点击这里直达官网文档点击这里下载我的代码demo本文最下面还有一些常见或者奇怪问题解决方案哦~ 为什…

GMRES算法及Matlab程序

关于GMRES的总结 一些理论以及代码 首先是我们要解决的问题,也就是最常见的问题,即求解 A x b Axb Axb Galerkin条件 krylov子空间 我们所做的GMRES实际上就是在Galerkin条件的扩张下,n o r m ( r ) normnorm不断减小的一个过程。这也是…

家用洗地机哪种好?性价比高的洗地机推荐

选择清洁家电时,首先需要考虑你需要清洁的区域和清洁的方式。如果你需要清洁的是地面,那么洗地机可能是一个不错的选择。洗地机的优势在于它可以自动清洁地面,并且可以在较短的时间内完成清洁工作。相比于其他的清洁家电,洗地机的…

设计链表(链表篇)

你可以选择使用单链表或者双链表,设计并实现自己的链表。 单链表中的节点应该具备两个属性:val 和 next 。val 是当前节点的值,next 是指向下一个节点的指针/引用。 如果是双向链表,则还需要属性 prev 以指示链表中的上一个节点…

Linux_红帽8学习笔记分享_5

Linux_红帽8学习笔记分享_5 文章目录 Linux_红帽8学习笔记分享_51. UMASK反掩码1.1如何查看反掩码umask1.2 UMASK反掩码的作用1.2.1对于目录来说1.2.2对于文件来说 1.3如何修改UMASK反掩码1.4普通用户反掩码的测试 2.whereis的使用3. SUID权限弥补(主要针对文件,所有者执行位变…

第14章_数据结构与集合源码

第14章_数据结构与集合源码 讲师:尚硅谷-宋红康(江湖人称:康师傅) 官网:http://www.atguigu.com 本章专题与脉络 1. 数据结构剖析 我们举一个形象的例子来理解数据结构的作用: 战场:程序运行…

认识Object类和深浅拷贝

本文介绍了Object类以及Object类部分方法,toString方法,equals和hashCode方法(重写前和重写后的对比),getClass方法,clone方法,以及拷贝新对象时会出现的深浅拷贝, 内容较长,耗时一天,建议收藏后观看~ Object类和深浅拷贝 一.初识Object类1.Object类接收所有子类实例2.Object类…

【C 字符串】02 常用字符串函数(命令行参数)

Navigator 一、strlen()函数—统计长度二、strcat()函数—拼接三、strncat()函数—strcat()的升级四、strcmp()和strncmp()—比较五、strcpy()和strncpy()—拷贝六、sprintf()函数—合并多个字符串七、其他可能用到的字符串函数八、ctype.h中的字符函数九、把字符串转换为数字十…

(03)基础强化:静态类静态成员,静态构造函数,抽象类抽象成员,值类型和引用类型,Ref

一、静态成员 1、方法重写注意事项 1)子类重写父类方法时,必须与父类保持一致的方法签名与返回值类型。即: 方 法名、返回值类型、参数列表都必须保持一致。[访问修饰符也得一致] 2)“方法签名”:一般是指…

VScode---visual stdio code快速安装教程(Windows系统)

1.下载VSCode安装包,官网传送门https://code.visualstudio.com/ 选择Windows下的User Installer 64 bit 直接下载速度如果很慢,在浏览器或者下载软件中就可以看到这么一个下载地址了,复制链接地址(如下图箭头所指)。 …

本节作业之5秒后自动关闭广告、倒计时、发送短信、5秒之后自动跳转页面、获取URL参数数据

本节作业之5秒后自动关闭广告、倒计时、发送短信、5秒之后自动跳转页面、获取URL参数数据 1 5秒后自动关闭广告2 倒计时3 发送短信4 5秒之后自动跳转页面5 获取URL参数数据 1 5秒后自动关闭广告 <!DOCTYPE html> <html lang"en"> <head><meta …

管理系统的前端模板(vue2+Element UI)

目录 前言 一、模板展示图 二、获取的方式及操作运行步骤 &#xff08;一&#xff09;获取方式 &#xff08;二&#xff09;操作步骤 1.下载安装node.js 2.下载完成解压缩后在idea的里面打开终端。 3.输入下载相关依赖的命令 4.运行项目的命令 5.然后把给到的地址…