MyBatis-Plus学习-part5 使用AR模式

entity

/**
 * java Bean
 * @author Administrator
 *
 */
//@TableName(value="tb_employee")
public class Employee extends Model<Employee>
{	
	
	//@TableId(value="id",type=IdType.AUTO)// value 指定数据库中对应列名, type 主键使用的策略
	private Integer id;
	@TableField(value="last_name")
	private String lastName;
	private String email;
	private Integer gender;
	private Integer age;
	@TableField(exist=false)
	private Double salary;
	public Employee() {
		super();
	}
	
	public Employee(String lastName, String email, Integer gender, Integer age) {
		super();
		this.lastName = lastName;
		this.email = email;
		this.gender = gender;
		this.age = age;
	}

	public Employee(Integer id, String lastName, String email, Integer gender, Integer age) {
		super();
		this.id = id;
		this.lastName = lastName;
		this.email = email;
		this.gender = gender;
		this.age = age;
	}
	
	public Employee(Integer id, String lastName, String email, Integer gender, Integer age, Double salary) {
		super();
		this.id = id;
		this.lastName = lastName;
		this.email = email;
		this.gender = gender;
		this.age = age;
		this.salary = salary;
	}

	public Double getSalary() {
		return salary;
	}

	public void setSalary(Double salary) {
		this.salary = salary;
	}

	public Integer getId() {
		return id;
	}
	public void setId(Integer id) {
		this.id = id;
	}
	public String getLastName() {
		return lastName;
	}
	public void setLastName(String lastName) {
		this.lastName = lastName;
	}
	public String getEmail() {
		return email;
	}
	public void setEmail(String email) {
		this.email = email;
	}
	public Integer getGender() {
		return gender;
	}
	public void setGender(Integer gender) {
		this.gender = gender;
	}
	public Integer getAge() {
		return age;
	}
	public void setAge(Integer age) {
		this.age = age;
	}
	@Override
	public String toString() {
		return "Employee [id=" + id + ", lastName=" + lastName + ", email=" + email + ", gender=" + gender + ", age="
				+ age + "]";
	}
	//哪个属性是当前实例类的主键
	@Override
	protected Serializable pkVal() {
		return id;
	}
}

mapper

/**
 * 
 * @author Ezerbel
 *	
 *	基于Mybatis: 在Mapper接口中编写CRUD相关方法,提供Mapper接口所对应的SQL映射文件以及方法对应的SQL语句
 *	基于MP: 让XxxMapper接口继承BaseMapper接口即可。
 *
 */
public interface EmployeeMapper extends BaseMapper<Employee>{
	
}

使用AR

插入

@Test
public void testARInsert() {
	Employee employee = new Employee();
	employee.setLastName("Ezerbel");
	employee.setEmail("EzerbelCN@gamail.com");
	employee.setAge(19);
	employee.setGender(1);
	
	boolean res = employee.insert();
	
	System.out.println("res ========= " + res);
}

更新

@Test
public void testARUpdate() {
	Employee employee = new Employee();
	employee.setLastName("Ezerbel");
	employee.setEmail("EzerbelCN@gamail.com");
	employee.setAge(36);
	employee.setGender(1);
	employee.setId(28);
	employee.updateById();
} 

查找

@Test
public void testARSelect1() {
	Employee employee = new Employee();
	Employee res = employee.selectById(7);
	System.out.println(res);
}

@Test
public void testARSelect2() {
	Employee employee = new Employee();
	employee.setId(9);
	Employee res = employee.selectById();
	System.out.println(res);
}

@Test
public void testARSelect3() {
	Employee employee = new Employee();
	List<Employee> res = employee.selectAll();
	res.forEach(System.out::println);
}

@Test
public void testARSelect4() {
	Employee employee = new Employee();
	List<Employee> res = employee.selectList(new EntityWrapper<Employee>().like("last_name", "x"));
	res.forEach(System.out::println);
}

删除

@Test
public void testARDelete1() {
	Employee employee = new Employee();
	boolean res = employee.deleteById(29);
	System.out.println("res ========= " + res);
}
@Test
public void testARDelete2() {
	Employee employee = new Employee();
	EntityWrapper<Employee> wrapper = new EntityWrapper<Employee>();
	boolean res = employee.delete(wrapper.eq("id", 30));
	System.out.println("res ========= " + res);
}

分页

这个分页属于内存分页,并非物理分页。

@Test
public void testARPage() {
	Employee employee = new Employee();
	EntityWrapper<Employee> wrapper = new EntityWrapper<Employee>();
	Page<Employee> page = employee.selectPage(new Page<>(2,2), wrapper.like("last_name", "x").or().like("last_name", "r").orderBy("age").last("desc"));
	List<Employee> employees = page.getRecords();
	employees.forEach(System.out::println);
}
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值