SpringBoot3.2.2整合MyBatis Plus3.5.5的详细过程
作者:蒾酒
这篇文章给大家介绍了SpringBoot3.2.2整合MyBatis Plus3.5.5的详细过程,文中通过代码示例给大家介绍的非常详细,对大家的学习或工作有一定的帮助,需要的朋友可以参考下
1.前置条件
已经初始化好一个spring boot项目且版本为3X,项目可正常启动
2.导坐标
<dependency> <groupId>com.baomidou</groupId> <artifactId>mybatis-plus-boot-starter</artifactId> <version>3.5.5</version> <exclusions> <exclusion> <groupId>org.mybatis</groupId> <artifactId>mybatis-spring</artifactId> </exclusion> </exclusions> </dependency> <dependency> <groupId>org.mybatis</groupId> <artifactId>mybatis-spring</artifactId> <version>3.0.3</version> </dependency>
为何要排除掉mybatis plus整合好的mybatis依赖单独引入一个?
Spring Boot 3.2.2整合MyBatis-Plus 3.5.5依赖不兼容问题SpringBoot3.2.2整合MyBatis-Plus3.5.5依赖不兼容的问题解决_java_脚本之家 (jb51.net)
3.配置数据源
application.yml:
spring: datasource: url: jdbc:mysql://localhost:3306/test username: root password: 123456
4.配置mapper扫描路径
在启动类添加@MapperScan("com.mijiu.mapper")注解指定mapper文件夹
如果不加该注解则要在每个mapper接口添加@Mapper注解
此时可以成功启动项目
看到MyBatis Plus的banner说明到这里整合好了。
5.MyBatis Plus代码生成器整合
官方文档:https://baomidou.com/pages/779a6e/
5.1.导坐标
第一个依赖是代码生成器
第二个是代码生成器所依赖代码生成模板velocity,当然不止这一个模板具体参阅官网
<dependency> <groupId>com.baomidou</groupId> <artifactId>mybatis-plus-generator</artifactId> <version>3.5.5</version> </dependency> <dependency> <groupId>org.apache.velocity</groupId> <artifactId>velocity-engine-core</artifactId> <version>2.3</version> </dependency>
5.2.编写代码生成逻辑
这里我写好demo了,需要修改的地方已经标记//TODO注释了
如果你的目录结构同作者类似,cv下面的demo修改一下//TODO标注的配置运行即可
import com.baomidou.mybatisplus.core.mapper.BaseMapper; import com.baomidou.mybatisplus.generator.FastAutoGenerator; import java.util.*; /** * @author mijiupro */ public class CodeGenerator { public static void main(String[] args) { getCode(); } public static void getCode() { //TODO 修改为自己的数据库信息 String url = "jdbc:mysql://localhost:3306/test?useUnicode=true&characterEncoding=UTF-8&useSSL=false&serverTimezone=Asia/Shanghai"; String username = "root"; String password = "123456"; //TODO 修改为自己的表名 List<String> tables = List.of("user");//需要生成对应代码的表名的集合 FastAutoGenerator.create(url, username, password) //全局配置---------------------------------------------------------------------------------------- .globalConfig(builder -> { builder .author("蒾酒")//TODO 修改为自己名称 .outputDir(System.getProperty("user.dir") + "\\src\\main\\java")// 输出路径(写到java目录) // .enableSwagger() //开启swagger,会自动添加swagger相关注解 .commentDate("yyyy-MM-dd");//日期格式 }) //包名配置-------------------------------------------------------------------------------------------- .packageConfig(builder -> builder.parent("com.mijiu")//TODO 修改为自己项目的路径 // .moduleName("practice")//模块名,设置该项会在输出路径上增加一层模块名目录 .entity("entity") .service("service") .serviceImpl("service.impl") .controller("controller") .mapper("mapper") .xml("mapper/xml") ) //策略配置----------------------------------------------------------------------------------------- .strategyConfig(builder -> { builder .addInclude(tables)// 需要生成代码对应的表,若需要生成全部表则注释该行解放下一行 // .addInclude("all")//生成全部表 // .addTablePrefix("p_")//表前缀过滤,例如“p_”开头的表不会生成对应代码 //实体策略配置 .entityBuilder() .enableFileOverride()// TODO 开启覆盖已生成的entity文件,关闭则注释本行 .enableLombok()// 自动添加lombok注解@Getter @Setter .logicDeleteColumnName("deleted")// 指定逻辑删除字段名自动为其添加逻辑删除字段注解 .enableTableFieldAnnotation()//启用表字段注解@TableField //Mapper策略配置 .mapperBuilder() .enableBaseResultMap() // 生成通用的resultMap .superClass(BaseMapper.class) .formatMapperFileName("%sMapper")//mapper文件后缀,如UserMapper // .enableFileOverride()// TODO 开启覆盖已生成的mapper文件,关闭则注释本行 .formatXmlFileName("%sMapper")//xml文件后缀,如UserMapper.xml //Service策略配置 .serviceBuilder() // .enableFileOverride()//TODO 开启覆盖已生成的service文件,关闭则注释本行 .formatServiceFileName("%sService") .formatServiceImplFileName("%sServiceImpl") //Controller策略配置 .controllerBuilder() .enableHyphenStyle() // 映射路径使用连字符格式 .formatFileName("%sController") // .enableFileOverride()// TODO 开启覆盖已生成的controller文件,关闭则注释本行 .enableRestStyle();//启用rest风格自动添加@RestController }).execute(); } }
运行即可。
以上就是SpringBoot3.2.2整合MyBatis Plus3.5.5的详细过程的详细内容,更多关于SpringBoot3.2.2整合MyBatis Plus3.5.5的资料请关注脚本之家其它相关文章!
您可能感兴趣的文章:
- SpringBoot3.x版本与Mybatis-Plus不兼容问题
- springboot3集成mybatis-plus报sqlSession异常的问题解决
- SpringBoot3.2.2整合MyBatis-Plus3.5.5依赖不兼容的问题解决
- SpringBoot3和mybatis-plus整合出现的问题解决办法
- 解决springboot3.2集成mybatis-plus3.5.4.1报错的问题
- springboot3.2整合mybatis-plus详细代码示例
- Springboot3整合Mybatis-plus3.5.3报错问题解决
- SpringBoot3整合mybatis-plus的实现
- Spring Boot3整合Mybatis Plus的详细过程(数据库为MySQL)