Mybatis(二)--Mapper代理开发

本文介绍了Mybatis的Mapper代理,旨在解决传统DAO接口实现中重复SQL语句和硬编码的问题。通过Mapper代理,可以避免这些问题,提高开发效率。文章详细讲解了Mapper代理的原理,并通过环境搭建、实体类、Mapper接口和配置、sqlMapConfig.xml配置以及测试用例的步骤,展示了如何使用Mapper代理。总结中强调,使用getMapper方法获取代理对象,使得接口方法直接对应数据库操作,提高了代码的可读性和维护性。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

一、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=
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值