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包即可。

相关推荐
JosieBook8 分钟前
【web应用】Maven:Java 生态的构建与依赖管理利器
java·前端·maven
苹果醋317 分钟前
react_05create-react-app脚手架详细解析(export)
java·运维·spring boot·mysql·nginx
红鲤鱼遇绿鲤鱼27 分钟前
cf Educational Codeforces Round 177 C. Disappearing Permutation
java·c语言·算法
都叫我大帅哥29 分钟前
Java G1垃圾收集器:从入门到调优的全面指南
java·jvm
都叫我大帅哥29 分钟前
RabbitMQ惰性队列:拯救内存的“树懒”战士 🦥
java·rabbitmq
薛家明31 分钟前
最强ORM让你开发效率提升百倍
java·orm·easy-query
右手嘚温暖6 小时前
分布式事务Seata、LCN的原理深度剖析
spring boot·分布式·后端·spring·spring cloud·中间件·架构
麦兜*8 小时前
Spring Boot集成方案 + Elasticsearch向量检索,语义搜索核弹
java·spring boot·python·spring·elasticsearch·spring cloud·系统架构
Absinthe_苦艾酒9 小时前
JVM学习专题(四)对象创建过程
java·jvm·后端
程序员奈斯10 小时前
苍穹外卖Day10
java