Mybatis Plus
MyBatis-Plus (opens new window)(简称 MP)是一个 MyBatis (opens new window)的增强工具,在 MyBatis 的基础上只做增强不做改变,为简化开发、提高效率而生。
愿景
我们的愿景是成为 MyBatis 最好的搭档,就像 魂斗罗 中的 1P、2P,基友搭配,效率翻倍。
任何能使用
MyBatis
进行 CRUD, 并且支持标准 SQL 的数据库,具体支持情况如下,如果不在下列表查看分页部分教程 PR 您的支持。
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-fK1TuygR-1679234128051)(image/image-20230319214436002.png)]
org.springframework.boot spring-boot-starter-parent 2.5.4 UTF-8 UTF-8 1.8 org.springframework.boot spring-boot-starter-web org.projectlombok lombok true com.baomidou mybatis-plus-boot-starter 3.5.1 com.baomidou mybatis-plus-extension 3.5.1 org.projectlombok lombok true org.springframework.boot spring-boot-starter-test test mysql mysql-connector-java 8.0.16 com.alibaba druid 1.1.21 org.freemarker freemarker 2.3.30 test org.springframework.boot spring-boot-starter-thymeleaf org.springframework.boot spring-boot-maven-plugin 2.5.4
server:port: 8080
# DataSource Config
spring:application:name: userthymeleaf:cache: falsedatasource:url: jdbc:mysql://localhost:3306/test?characterEncoding=utf8&useSSL=false&serverTimezone=UTCusername: rootpassword: rootdriver-class-name: com.mysql.cj.jdbc.Drivermybatis-plus:# mapper配置文件。可能有多个,所以Mapper.xml结尾的都添加进来mapper-locations: classpath:mapper/*Mapper.xmlconfiguration:# 类属性与表字段的驼峰映射,mybatis plus默认true开启,mybatis需要手动配置,且config-location和configuration不能同时出现map-underscore-to-camel-case: true# 配置日志输出log-impl: org.apache.ibatis.logging.stdout.StdOutImpl# Logger Config
logging:level:com.neo: debug
import com.baomidou.mybatisplus.extension.plugins.MybatisPlusInterceptor;
import com.baomidou.mybatisplus.extension.plugins.inner.PaginationInnerInterceptor;
import org.mybatis.spring.annotation.MapperScan;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;@Configuration
@MapperScan("com.neo.mapper")
public class MybatisPlusConfig {@Beanpublic MybatisPlusInterceptor mybatisPlusInterceptor() {MybatisPlusInterceptor mybatisPlusInterceptor = new MybatisPlusInterceptor();PaginationInnerInterceptor paginationInnerInterceptor = new PaginationInnerInterceptor();mybatisPlusInterceptor.addInnerInterceptor(paginationInnerInterceptor);return mybatisPlusInterceptor;}}
package com.neo.model;import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;@TableName(value = "t_user")
public class User {/*** 用户表主键Id*/@TableIdprivate String userId;/*** 用户姓名*/private String userName;/*** 用户年龄*/private String userAge;/*** 用户住址*/private String userAddr;/*** 用户性别*/private String userSex;/*** 用户电话号码*/private String userPhone;public String getUserId() {return userId;}public void setUserId(String userId) {this.userId = userId;}public String getUserName() {return userName;}public void setUserName(String userName) {this.userName = userName;}public String getUserAge() {return userAge;}public void setUserAge(String userAge) {this.userAge = userAge;}public String getUserAddr() {return userAddr;}public void setUserAddr(String userAddr) {this.userAddr = userAddr;}public String getUserSex() {return userSex;}public void setUserSex(String userSex) {this.userSex = userSex;}public String getUserPhone() {return userPhone;}public void setUserPhone(String userPhone) {this.userPhone = userPhone;}
}
package com.neo.service;import com.baomidou.mybatisplus.extension.service.IService;
import com.neo.model.User;import java.util.List;public interface UserService extends IService {List getUserByUserAge(String userAge);
}
package com.neo.service.impl;import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.neo.mapper.UserMapper;
import com.neo.model.User;
import com.neo.service.UserService;
import org.springframework.stereotype.Service;import java.util.List;@Service
public class UserServiceImpl extends ServiceImpl implements UserService {@Overridepublic List getUserByUserAge(String userAge) {return this.baseMapper.getUserByUserAge(userAge);}
}
package com.neo;import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;/*** http://localhost:8080/api/v1/user/list*/
@SpringBootApplication
public class MyBatisPlusApplication {public static void main(String[] args) {SpringApplication.run(MyBatisPlusApplication.class, args);}
}
添加用户
用户列表 用户管理系统
姓名 年龄 住址 性别 电话号码 '/api/v1/user/updatePage/'+${user.userId}}">更改'/api/v1/user/delete/'+${user.userId}}">删除
当前 [[${page.current}]]页,总[[${page.pages }]]页,总[[ ${page.total }]] 条记录
修改用户
在这里插入图片描述