一、Mapper代理
传统开发方式跟数据连接使用dao接口,dao接口的实现类存在大量重复语句,且存在硬编码,如Mybatis(一)中的类似语句
sqlSession.delete("cn.cf.domain.User.deleteUserById", 3);
传入的变量因为sqlSession使用泛型,无法判断是否正确。因此对程序的开发会有些不利。
mapper代理
因此使用mapper代理改进。以下列子将使用mapper代理
二、mapper代理实例
2.1 环境搭建
2.2 实体类
package cn.cf.domain;
/**
* Product的实体类
*
* @author cf
*
*/
public class Product {
private int p_id;
private String p_name;
private Double p_price;
private String p_category;
public int getP_id() {
return p_id;
}
public void setP_id(int p_id) {
this.p_id = p_id;
}
public String getP_name() {
return p_name;
}
public void setP_name(String p_name) {
this.p_name = p_name;
}
public Double getP_price() {
return p_price;
}
public void setP_price(Double p_price) {
this.p_price = p_price;
}
public String getP_category() {
return p_category;
}
public void setP_category(String p_category) {
this.p_category = p_category;
}
@Override
public String toString() {
return "Product [p_id=" + p_id + ", p_name=