本章介绍了代码生成器的作用、配置方式以及如何采用代码生成器自动生成MyBatisPlus模板代码进行了描述,重点引入了两个持久层的案例分别是单条信息添加以及批量信息添加,实现对于持久层操作有个深刻的理解。
添加依赖pom.xml
编写配置
//配置 GlobalConfig GlobalConfig globalConfig = new GlobalConfig(); globalConfig.setOutputDir(System.getProperty("user.dir") + "/src/main/java"); globalConfig.setAuthor("jobob"); globalConfig.setOpen(false);
//配置 DataSourceConfig DataSourceConfig dataSourceConfig = new DataSourceConfig(); dataSourceConfig.setUrl("jdbc:mysql://localhost:3306/userdb?useUnicode=true&useSSL=false&characterEncoding=utf8"); dataSourceConfig.setDriverName("com.mysql.jdbc.Driver"); dataSourceConfig.setUsername("root"); dataSourceConfig.setPassword("password");
自定义属性注入
autoGenerator .setCfg(injectionConfig);
entity包:实体模型层
mapper包:持久化模型层
//自动生成类UserMapper.java public interface UserMapper extends BaseMapper
com.baomidou.mybatisplus.core.mapper.BaseMapper类:封装了系统持久化方法

service包:业务逻辑层,需要调用mapper持久层
//UserMapper是调用的持久类 //User是操作的实体类 @Service public class UserServiceImpl extends ServiceImpl
controller包:控制层
@RestController @RequestMapping("/user") public class UserController { }
get 查询单行 remove 删除 list 查询集合 page 分页 前缀命名方式区分 Mapper 层避免混淆,T 为任意实体对象IBaseService 继承 Mybatis-Plus 提供的基类Wrapper 为 条件构造器配置MapperScan注解
@MapperScan("cn.com.chinahitech.springboot_user.*.mapper") public class SpringbootUserApplication { ... }
添加日志记录配置
application.xml添加配置
- mybatis-plus:
- type-aliases-package: cn.com.chinahitech.mybatisplus_user.*.entity
- global-config:
- db-config:
- id-type: auto
- logic-delete-field: 1
- logic-not-delete-value: 0
- ......
public interface IUserService extends IService
@Service public class UserServiceImpl extends ServiceImpl
@RestController @RequestMapping("/user") public class UserController { @Autowired private IUserService userService; //save方式添加1条记录 @RequestMapping("/saveOne") public String testSaveOneRecord(){ User user = new User("Tony",23,"tony@123.com"); userService.addUser(user); return "添加1条记录成功!"; } }

采用saveOrUpdate(参数)方法
//添加或更新用户 void addOrModifyUser(User user);
@Override public void addOrModifyUser(User user) { saveOrUpdate(user); }
//saveOrUpdate方式添加或更新1条记录 @RequestMapping("/saveOrUpdate") public String testSaveOrUpdateOneRecord(){ User user = new User(6,"李四",28,"lisi@123.com"); userService.addOrModifyUser(user); return "添加或更新1条记录成功!"; }

开始实验
//基于List对象方式添加多条记录 void addUserList(List
@Override public void addUserList(List
//添加多条记录 @RequestMapping("/saveUsers") public String testSaveUsers(){ List
