1.首先引入pom依赖
<!--mybatis-plus springboot依赖-->
<dependency>
<groupId>com.baomidou</groupId>
<artifactId>mybatis-plus-boot-starter</artifactId>
<version>3.1.1</version>
</dependency>
<!--简化Javabean开发的包依赖-->
<dependency>
<groupId>org.projectlombok</groupId>
<artifactId>lombok</artifactId>
<optional>true</optional>
<version>1.18.4</version>
</dependency>
2.创建实体类对象User.java
/**
* 帮我们生成了各种方法,简化了Javabean的开发
*/
@Data //lombok getter setter方法
@NoArgsConstructor //无参构造
@AllArgsConstructor //全餐构造
@TableName("tb_user") //mybatisplus表名称
public class User {
//设置自增长
@TableId(type = IdType.AUTO)
private Long id;
private String userName;
//查询时候,不返回这个字段的值
@TableField(select = false)
private String password;
private String name;
private Integer age;
private String email;
//正真的属性字段,但是数据库中没有这个字段
@TableField(exist = false)
private String address;
}
3.创建UserMapper.java
@Mapper
public interface UserMapper extends BaseMapper<User> {}
4.单元测试,所有的CRUD
@SpringBootTest
class SpringbootMybatisplusApplicationTests {
@Autowired
UserMapper userMapper;
/*查询所有*/
@Test
void findAll() {
List<User> users = userMapper.selectList(null);
for(User user:users){
System.out.println(user);
}
}
/*插入测试*/
@Test
public void testInsert(){
User user = new User();
user.setName("王一宁");
user.setPassword("123456");
user.setUserName("吾皇万岁");
user.setEmail("123456789@163.com");
user.setAge(23);
int result = userMapper.insert(user);
System.out.println("受影响的行数"+result);
//获取自增长的id plus 回填user对象中
System.out.println("id:"+user.getId());
}
/*测试更具id 查询*/
@Test
public void testSelectById(){
User user = userMapper.selectById(1L);
System.out.println(user);
//User(id=1, userName=wang, password=null, name=王一宁, age=23, email=1506773471@qq.com, address=null)
}
/*测试更新根据id*/
@Test
public void testUpdateById(){
User user = new User();
user.setId(1L);
user.setAge(19);
user.setEmail("110");
userMapper.updateById(user);
}
/*根据条件更新*/
@Test
public void testUpdate(){
User user = new User();
user.setAge(19);
user.setEmail("110");
//设置条件
QueryWrapper<User> wrapper = new QueryWrapper<>();
wrapper.eq("user_name","wang");
userMapper.update(user,wrapper);
}
/*根据id删除*/
@Test
public void deleteById(){
int i = userMapper.deleteById(2L);
System.out.println(i);
}
/*吧多条件删除条件封装到Map中*/
@Test
public void deleteByMap(){
Map<String,Object> map = new HashMap<>();
map.put("user_name","wang");
map.put("password","123456");
userMapper.deleteByMap(map);
}
/*条件查询*/
@Test
public void delete(){
//设置条件
QueryWrapper<User> wrapper = new QueryWrapper<>();
wrapper.eq("user_name","wang").eq("password","123456");
userMapper.delete(wrapper);
}
}
评论