MyBatisPlus学习笔记(二)ActiveRecord(活动记录)

MyBatisPlus学习笔记(二)ActiveRecord(活动记录)

理解ActiveRecord

  • Active Record(活动记录),是一种领域模型模式,特点是一个模型类对应关系型数据库中的一个表,而模型类的一个实例对应表中的一行记录。
  • AR 模式提供了一种更加便捷的方式实现 CRUD 操作,其本质还是调用的 Mybatis 对应的方法,类似于语法糖
  • 语法糖是指计算机语言中添加的某种语法,这种语法对原本语言的功能并没有影响,可以更方便开发者使用,可以避免出错的机会,让程序可读性更好.

部署使用

  • 只需要让实体类直接继承 Model 类且实现主键指定的方法即可。

  • 示例

    public class Employee extends Model<Employee>{
        // ..fields
        // ..getter and setter
    	
    	@Override
    	protected Serializable pkVal() {
    		return this.id;
    	}
    }
    
  • pkVal() 即是返回的主键值,必须使用此方法

基本CRUD

insert
public void insertAR() {
    Employee employee = new Employee();
    employee.setLastName("qazx");
    employee.setAge(44);
    employee.setEmail("qazx@qq.com");
    boolean insert = employee.insert();
    System.out.println("操作是否成功:"+insert);
}
update
public void updateAR() {
	Employee employee = new Employee();
	employee.setLastName("qqzx");
	employee.setAge(24);
	employee.setGender(1);
	/*
	employee.setId(18);
	boolean updateById = employee.updateById();
	// UPDATE tbl_employee SET last_name=?, gender=?, age=? WHERE id=?
	System.out.println("操作是否成功:"+updateById);
	*/
	boolean update = employee.update(new EntityWrapper<Employee>()
			.eq("last_name", "qqq"));
	// UPDATE tbl_employee SET last_name=?, gender=?, age=? WHERE (last_name = ?)
	System.out.println("操作是否成功:"+update);
}
select
public void selectAR() {
	Employee employee = new Employee();
	employee.setLastName("qazx");
	List<Employee> list = employee.selectList(new EntityWrapper<>().eq("last_name", "qazx"));
	// SELECT id,last_name AS lastName,email,gender,age FROM tbl_employee WHERE (last_name = ?)
	for (Employee employee2 : list) {
		System.out.println(employee2);
	}
}
delete
public void deleteAR() {
	Employee employee = new Employee();
	boolean delete = employee.delete(new EntityWrapper<Employee>().like("last_name", "ef"));
	// DELETE FROM tbl_employee WHERE (last_name LIKE ?)  %ef%
	System.out.println("操作是否成功:"+delete);
}

总结

  1. 想要使用ActiveRecord(活动记录),只要实体类继承Model类,再实现pkVal() 方法即可。
  2. 使用方法和mybatisPlus中提供的方法类似,主要使用条件构造器。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值