前言
本章主要讲述ActiveRecord的概述及使用
一、概述
ActiveRecord也属于ORM(对象关系映射)层,由Rails最早提出,遵循标准的ORM模型:表映射到记录,记录映射到对象,字段映射到对象属性。配合遵循的命名和配置惯例,能够很大程度的快速实现模型的操作,而且简洁易懂。
- ActiveRecord的主要思想是:
每一个数据库表对应创建一个类,类的每一个对象实例对应于数据库中表的一行记录;通常表的每个字段
在类中都有相应的Field;
ActiveRecord同时负责把自己持久化,在ActiveRecord中封装了对数据库的访问,即CURD;;
ActiveRecord是一种领域模型(Domain Model),封装了部分业务逻辑;
二、使用
- 方法:只需要将实体对象继承Model即可
- 测试用例
package com.mikasa.mp;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper;
import com.mikasa.mp.mapper.UserMapper;
import com.mikasa.mp.pojo.User;
import org.junit.Test;
import org.junit.runner.RunWith;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.boot.test.context.SpringBootTest;
import org.springframework.test.context.junit4.SpringRunner;
import java.util.List;
@RunWith(SpringRunner.class)
@SpringBootTest
public class TestAR {
@Autowired
private UserMapper userMapper;
//新增用户
@Test
public void insert(){
User user = new User();
user.setId(7L);
user.setAge(22);
user.setUserName("mikasa");
user.setName("m");
user.setMail("411400");
user.setPassword("21888");
//直接调用user的CURD即可
boolean insert = user.insert();
System.out.println("result =>"+insert);
}
//有条件的查询用户
@Test
public void selectByCondition(){
User user = new User();
QueryWrapper<User> wrapper = new QueryWrapper<>();
wrapper.le("age",20);
List<User> users = user.selectList(wrapper);
for (User user1 : users) {
System.out.println(user1);
}
}
//根据id删除
@Test
public void deleteById(){
User user = new User();
boolean result = user.deleteById(6L);
System.out.println(result);
}
//更新用户
@Test
public void updateById(){
User user = new User();
user.setAge(33);
UpdateWrapper<User> wrapper = new UpdateWrapper<>();
wrapper.eq("user_name","zhangsan");
boolean result = user.update(wrapper);
System.out.println("result=>"+ result);
}
}
- 测试结果(新增,查询)