IDEA中,MybatisPlus整合Spring项目的基础用法

一、本文涉及的知识点【重点】

        IDEA中使用MybatisPlus生成代码,并使用。

        Spring整合了Mybatis框架后,开发变得方便了很多,然而,Mapper、Service和XML文件,在Spring开发中常常会重复地使用,每一次的创建、修改都很浪费时间,为了解决这个问题,MybatisPlus出现了。

        这个开发工具,可以理解为Mybatis的增强版,最重要的功能就是解决重复问题,快速开发。

二、IDEA的集成【下载2个插件】

        第一步,在IDEA左上角,依次点击

        File---》Setting---》Plugins。

        在搜索框里,搜索mybatis,选中小鸟。

        在新版的IDEA中,一般会自带Database Tools and SQL插件,如果没有,则在同一步骤里,搜索该插件并下载使用。

        做完这两步,IDEA的配置工作就已经完成了,接下来就是MybatisPlus的使用。

三、IDEA可视化使用MybatisPlus【操作流程】

       第一步,在右侧边栏打开“Database”【有些版本的IDEA,可能Database在其它地方,具体要自己查找。】【默认情况下,打开时应该是一片空白

        第二步,点击右上角的“+”号,选择“Data Source”,然后根据自己使用的数据库,选择合适的Support,比如我的是MySQL。

        【注:我这里的“com.mysql.cj……”是上次连接的名字,是随意的,与具体版本无关】

        第三步,选择合适的Driver,添加用户名、密码和数据库URL(如果是远程连接,同样添加对应的端口号、IP地址和指定数据库)

        以下图为例,一般IDEA会根据你的数据库版本,选择合适的Driver,如果没选对,手动选对就好【在下图蓝色的Driver处,选择合适的Driver】(这个Driver,如果仓库里没有,会自动下载到你的Maven仓库里,下次就能直接使用了)

        输入两个信息:用户名、密码。

        然后是2个信息:IP地址和端口号,在你电脑上的,默认是3306和127.0.0.1

        最后的信息,就是你要连接的数据库名称【一个MySQL中,会有许多数据库,你要指定对应的数据库】,我这里连接的是test

        一般至此,连接成功。

        接下来,会出现下图。

        第四步,一直打开详情,直到出现下图的表:

        随便选择一张表,右键,选择第一个Generator。【这就是代码生成器】

        第五步,输入相关信息。

        下图,单击module path,选择当前项目【这个选项的意思就是,你准备把代码,生成到哪一个项目里。】

        第六步,选择生成的格式。

        这里需要修改2个地方,在annotation里,选择Mybatis-Plus 3。在template里,选择mybatis-plus3,如图所示。

        第七步,完成。

四、IDEA生成代码的异常处理

        第一个:如果你的Spring Boot项目中,没有在pom.xml文件中,添加MybatisPlus的依赖,那么,插件生成的代码,会自带错误。【pom.xml文件必须添加MybatisPlus的依赖

        解释:IDEA集成的MybatisPlus,提供的代码生成功能,只是帮助你生成一份标准文件,没有引入依赖。你的项目依赖,仍然是从Maven仓库里拿,如果没引入依赖,项目就无法识别MybatisPlus的相关注解、类。

        第二个:虽然Mapper、XML和Service都生成好了,Controller也自己写好了,但是启动SpringBoot项目,却出现404Not Found错误。

        解决方案:这是由于生成的代码,很可能不在Spring项目的扫描包里,我们需要手动地添加2个注解。

        @MapperScan:指向你的mapper文件【mapper接口文件,不是XML文件】

        @ComponentScan:指向你的Service、Controller包即可。

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

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

pytorch学习笔记4

开启tensorboard 在terminal中输入tensorboard --logdir文件名 文件名中不能含有空格 tensorboard --logdirlogs --port6007#将端口调整为6007tensorboard --logdirlogs --port 0 自动分配一个端口,成功访问打开的时候如果发现没数据可以把logs换成文件夹的绝对路径…

[无监督学习] 10.详细图解PCA

PCA 在众多降维算法中,PCA(Principal Component Analysis,主成分分析)历史悠久,被广泛应用于各个领域。 使用 PCA 可以将相关的多变量数据以主成分简洁地表现出来。 概述 PCA 是一种用于减少数据中的变量的算法。它对…

11.3 指针和函数

11.3 指针和函数 本节必须掌握的知识点: 指针作为函数的参数 数组作为函数的参数 指针作为函数的返回值 在C语言中,指针的一个重要作用就是作为函数参数使用,本节将介绍这一重要作用。 11.3.1 指针作为函数的参数 实验一百一十三&#xff…

从功能性磁共振成像(fMRI)数据重建音频

听觉是人类最重要的感官之一,它负责接收外部的听觉刺激,并将这些信息传递给大脑进行处理和理解。研究人员正致力于从神经科学和计算机科学两个领域探索人脑的听觉感知机制。一个关键目标是从人脑中解码神经信息,并重建原始的刺激。常见的大脑…

深入解析 YOLOv8 中的 `conv.py`(代码图文全解析-下)

😎 作者介绍:我是程序员行者孙,一个热爱分享技术的制能工人。计算机本硕,人工制能研究生。公众号:AI Sun,视频号:AI-行者Sun 🎈 本文专栏:本文收录于《yolov8》系列专栏&…

快速排序详讲(两种方法)

目录 原理 实现方式 正常实现 理由 先从右到左,在从左到右 先从左到右,先从右到左 挖坑法 效率 优化 测试 代码 原理 快速排序是将最左侧的数字当作关键数字,将关键数字放在对应位置,且关键数字左侧均大于它&#xff…

【深度学习】【STWave】时空图预测,车流量预测,Efficient Spectral Graph Attention Network

Spatio-Temporal meets Wavelet: Disentangled Traffic Flow Forecasting via Efficient Spectral Graph Attention Network 代码:https://github.com/LMissher/STWave 论文:https://arxiv.org/abs/2112.02740 帮助: https://docs.qq.com/s…

使用pycharm+opencv进行视频抽帧(可以用来扩充数据集)+ labelimg的使用(数据标准)

一.视频抽帧 1.新创建一个空Pycharm项目文件,命名为streach zhen 注:然后要做一个前期工作 创建opencv环境 (1)我们在这个pycharm项目的终端里面输入下面的命令: pip install opencv-python --user -i https://pypi.t…

【Kubernetes】Pod理论详解

一、Pod基础概念: Pod是kubernetes中最小的资源管理组件,Pod也是最小化运行容器化应用的资源对象。一个Pod代表着集群中运行的一个进程。kubernetes中其他大多数组件都是围绕着Pod来进行支撑和扩展Pod功能的,例如,用于管理Pod运行…

网页音频提取在线工具有哪些 网页音频提取在线工具下载

别再到处去借会员账号啦。教你一招,无视版权和地区限制,直接下载网页中的音频文件。没有复杂的操作步骤,也不用学习任何代码。只要是网页中播放的音频文件,都可以把它下载到本地保存。 一、网页音频提取在线工具有哪些 市面上的…

python的元组

元组与列表的区别 元组和列表非常相似。不同之处在于,外观上:列表是被 方括号 包裹起来的,而元组是被 圆括号 包裹起来的。本质上:列表里的元素可修改,元组里的元素是 不可以“增删改” 。 还有一个微妙的地方要注意…

网络研究观-20240601

新战争时代的商业风险 美国人已经将战争视为遥远战场上发生的事件。然而,网络空间打破了这种看法,让全球战争的真正影响来到了美国家门口。 攻击不再局限于遥远的战场,而是在最意想不到的时间和地点发动袭击。 谁将主宰第五次工业革命&…

智慧校园的机遇与挑战

随着5G、物联网、大数据等技能的日渐老练,数字化正在渗透到各行各业中,为事务立异和价值增加供给支撑。在教育职业,运用智能化体系赋能教育办理越来越受欢迎,教育信息化方针一再出台,进一步加快了智慧校园落地的脚步。…

Dijkstra求最短路篇一(全网最详细讲解两种方法,适合小白)(python,其他语言也适用)

前言: Dijkstra算法博客讲解分为两篇讲解,这两篇博客对所有有难点的问题都会讲解,小白也能很好理解。看完这两篇博客后保证收获满满。 本篇博客讲解朴素Dijkstra算法,第二篇博客讲解堆优化Dijkstra算法Dijkstra求最短路篇二(全网…

联合和枚举(自定义类型)

1.枚举(关键字:enum) 1.1枚举类型的声明 把可能的值一一列举 赋的值是可能取值 1.2枚举类型的优点 1)增加代码的可读性和可维护性 2)和#define定义的标识符比较枚举有类型检查,更加严谨 3)便于调试&a…

【C++】list的使用(下)

🔥个人主页: Forcible Bug Maker 🔥专栏: STL || C 目录 前言🔥操作list对象的接口函数(opeartions)spliceremoveremove_ifuniquemergesortreverse 结语 前言 本篇博客主要内容:STL…

智能合约引领:探索Web3的商业革新之路

随着区块链技术的迅速发展,智能合约作为其重要应用之一,正在逐步改变着商业世界的格局。Web3作为下一代互联网的代表,正引领着智能合约在商业领域的广泛应用和创新。本文将深入探讨智能合约在Web3中的作用,以及智能合约如何引领着…

「计网」网络初识

🎇个人主页:Ice_Sugar_7 🎇所属专栏:计网 🎇欢迎点赞收藏加关注哦! 网络初识 🍉IP 地址 & 端口号🍉网络协议🍌TCP/IP 网络协议 🍉封装和分用&#x1f349…

Xcode设置cocoapods库的最低兼容版本

目录 前言 1.使用cocoapods遇到的问题 2.解决办法 1.用法解释 1. config.build_settings: 2.IPHONEOS_DEPLOYMENT_TARGET 2.使用实例 3.注意事项 1.一致性 2.pod版本 前言 这篇文章主要是介绍如何设置cocoapods三方库如何设置最低兼容的版本。 1.使用cocoapods遇到的…

小红书图片视频下载利器,无水印!

在刷小红书时,总能看到一些博主发的好看的壁纸或者视频,想下载下来做头像或者设置为手机电脑的桌面。不过众所周知,直接保存的图片和视频都是有水印的,那如何去掉水印呢? 有些朋友肯定说,我知道有去水印的…