<dependency>
<groupId>org.projectlombok</groupId>
<artifactId>lombok</artifactId>
<optional>true</optional>
</dependency>
<dependency>
<groupId>com.alibaba</groupId>
<artifactId>druid-spring-boot-starter</artifactId>
<version>1.2.8</version>
</dependency>
<dependency>
<groupId>com.baomidou</groupId>
<artifactId>mybatis-plus-boot-starter</artifactId>
<version>3.5.3</version>
</dependency>
添加依赖
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
public interface UserMapper extends BaseMapper<User> {
}
继承basemapper
<dependency>
<groupId>com.baomidou</groupId>
<artifactId>mybatis-plus-boot-starter</artifactId>
<version>3.5.3.1</version>
</dependency>
<dependency>
<groupId>org.projectlombok</groupId>
<artifactId>lombok</artifactId>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-data-redis</artifactId>
</dependency>
mybatis-plus:
mapper-locations: classpath:mappers/*xml
type-aliases-package: com.example.demo.mybatis.entity
configuration:
map-underscore-to-camel-case: true #开启驼峰命名
配置mybaits-plus
<dependency>
<groupId>com.baomidou</groupId>
<artifactId>mybatis-plus-boot-starter</artifactId>
<version>3.5.3.1</version>
</dependency>
<dependency>
<groupId>org.projectlombok</groupId>
<artifactId>lombok</artifactId>
</dependency>
<dependency>
<groupId>com.baomidou</groupId>
<artifactId>mybatis-plus-boot-starter-test</artifactId>
<version>3.5.6</version>
</dependency>
搜索mybatis plus
https://mvnrepository.com/artifact/com.baomidou/mybatis-plus-spring-boot3-starter/3.5.6
<!-- https://mvnrepository.com/artifact/com.baomidou/mybatis-plus-spring-boot3-starter -->
<dependency>
<groupId>com.baomidou</groupId>
<artifactId>mybatis-plus-spring-boot3-starter</artifactId>
<version>3.5.6</version>
</dependency>
引用最新版本
Serializableuid
序列化id
增删改查
package com.example.mybatisplus.domain;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableName;
import com.fasterxml.jackson.annotation.JsonIgnore;
import lombok.Data;
import java.time.LocalDateTime;
//lombook 自动为实体类自动生成setter getter
@Data
@TableName("users")
public class Users {
private int id;
private String username;
// 忽略密码
@JsonIgnore
private String password;
// @NotNull
// @Pattern(regexp = "^\\${1,10}$")
private String nickname;
@TableField("user_pic")
private String userPick;
// @Email
private String email;
@TableField("create_time")
private LocalDateTime createTime;
@TableField("update_time")
private LocalDateTime updateTime;
}
mybatis-plus: mapper-locations: classpath:mappers/*xml configuration: map-underscore-to-camel-case: true #开启驼峰命名 log-impl: org.apache.ibatis.logging.slf4j.Slf4jImpl
配置mybatis-plus
# type-aliases-package: cn.xx.xx
void test3() {
// 条件构造器
QueryWrapper<EUser> wrapper = new QueryWrapper<>();
wrapper.eq("id",1);
List<EUser> eser = userMapper.selectList(wrapper);
System.out.println(eser);
}
生成条件构造器
void test2() {
List<Users> users = usersMapper.selectList(null);
System.out.println(users);
for (Users user : users) {
System.out.println(user);
}
}
多个循环出来
void test5() {
// 条件构造器
// 新增数据
int num = userMapper.insert(new EUser(5, "张三1", "123213", "2321321312", "13@132", "1", "1"));
if (num > 0) {
System.out.println(num+"成功");
}else {
System.out.println(0+"失败");
}
// System.out.println(num);
}
添加数据
void test6() {
// 第一种修改
EUser eUser = new EUser(5, "张三2", "123213", "2321321312", "13@132", "1", "1");
int i = userMapper.updateById(eUser);
System.out.println(i);
}
@AllArgsConstructor
// public EUser(Integer id, String name, String password, String phone, String email, String sex, String level) {
// this.id = id;
// this.name = name;
// this.password = password;
// this.phone = phone;
// this.email = email;
// this.sex = sex;
// this.level = level;
// }
注解可以减少写构造器
下面错误的
void test7() {
QueryWrapper<EUser> wrapper = new QueryWrapper<>();
wrapper.eq("id",5);
wrapper.eq("name","礼物啊");
int update = userMapper.update(wrapper);
System.out.println(update);
}
第二种修改
void test7() {
UpdateWrapper<EUser> wrapper = new UpdateWrapper<>();
wrapper.eq("id",5);
wrapper.set("name","礼物啊");
int update = userMapper.update(wrapper);
System.out.println(update);
}
void test8() {
EUser eUser = new EUser(5, "张三222", "123213", "2321321312", "13@132", "1", "1");
QueryWrapper<EUser> wrapper = new QueryWrapper<>();
wrapper.eq("id",5);
int update = userMapper.update(eUser,wrapper);
System.out.println(update);
}
void test9() {
int i = userMapper.deleteById(6);
System.out.println(i);
}
删除
@Test
void test10() {
// 删除第二种
QueryWrapper<EUser> wrapper = new QueryWrapper<>();
wrapper.eq("id",6);
int i = userMapper.delete(wrapper);
System.out.println(i);
}
void test11() { // 批量删除 // QueryWrapper<EUser> wrapper = new QueryWrapper<>(); // wrapper.eq("id",6); // int i = userMapper.delete(wrapper); // System.out.println(i); Map map = new HashMap(); map.put("id",1); int i = userMapper.deleteByMap(map); System.out.println(i); }
void test11() {
// 批量删除
// QueryWrapper<EUser> wrapper = new QueryWrapper<>();
// wrapper.eq("id",6);
// int i = userMapper.delete(wrapper);
// System.out.println(i);
Map map = new HashMap();
map.put("id",1);
int i = userMapper.deleteByMap(map);
System.out.println(i);
}
@Test
void test12() {
Collection collection = new ArrayList();
collection.add(6);
collection.add(7);
collection.add(8);
int i = userMapper.deleteBatchIds(collection);
System.out.println(i);
}
批量删除
常用的注解
@TableField("nickname")
@TableName("sys_user")
public class User {
private Long id;
private String name;
private Integer age;
private String email;
}