1.什么是AR呢?
AR是ActiveRecord(活动记录)的简称,是一种领域模型模式,特点是一个模型类对应关系型数据库中的一个表,而模型类的一个实例对应表中的一行记录。ActiveRecord也属于ORM(对象关系映射)层,由Rails最早提出,遵循标准的ORM模型:表映射到记录,记 录映射到对象,字段映射到对象属性。配合遵循的命名和配置惯例,能够很大程度的快速实现模型的操作,而 且简洁易懂。支持pActiveRecord形式的调用,实体类只需要继承Model类即可进行强大的CRUD操作。
2.使用AR其实是非常简单的,我们只需要将实体对象继承Mode<T>,接口继BaseMapper<T>即可。
@Data
@TableName("account")
public class User extends Model<User> {
private long id;
private String name;
private double money;
private int version;
}
@Mapper
public interface UserMapper extends BaseMapper<User> {
}
3.根据主键id查询
@SpringBootTest
class MybatisPlusSpringBootApplicationTests {
@Autowired
private UserMapper userMapper;
@Test
public void selectById(){
User user = new User();
user.setId(2L);
User user1 = user.selectById();
System.out.println("result ==> " + user1);
}
}
4.新增数据
@SpringBootTest
class MybatisPlusSpringBootApplicationTests {
@Autowired
private UserMapper userMapper;
@Test
public void insert(){
User user = new User();
user.setName("王五");
user.setMoney(5000);
boolean insert = user.insert();
System.out.println("result ==> " + insert);
}
}
5.根据id更新操作
@SpringBootTest
class MybatisPlusSpringBootApplicationTests {
@Autowired
private UserMapper userMapper;
@Test
public void update(){
User user = new User();
user.setId(2L);
user.setMoney(6000);
boolean result = user.updateById();
System.out.println("result ==> " + result);
}
}
6.删除操作
@SpringBootTest
class MybatisPlusSpringBootApplicationTests {
@Autowired
private UserMapper userMapper;
@Test
public void delete(){
User user = new User();
user.setId(6);
boolean result = user.deleteById();
System.out.println("result ==> " + result);
}
}
7.根据条件查询
@SpringBootTest
class MybatisPlusSpringBootApplicationTests {
@Autowired
private UserMapper userMapper;
@Test
public void selectList() {
User user = new User();
QueryWrapper<User> QueryWrapper = new QueryWrapper<>();
QueryWrapper.eq("name","tom");
List<User> users = user.selectList(QueryWrapper);
for (User user1 : users) {
System.out.println(user1);
}
}
}