MyBatis 的CRUD 功能

MyBatis 的CRUD 功能

### 增加对象

1. 在Mapper接口中增加添加方法

2. 在子配置文件中增加 方法与sql映射关系

    - 增加参数与SQL参数的映射关系

> 注意:Mapper接口方法名是ID不能重复,不能重载方法,所有的Mapper接口中的方法名都不能重复!

参考代码:

	interface DeptMapper{
		//增加方法
		void addDept(Dept dept);
	}
	//DeptMapper.xml 文件
	//增加接口方法与sql的对应关系
	// 增加参数与SQL参数的对应关系
	<insert id="addDept"
		parameterType="cn.tedu.entity.Dept">
		insert into dept (...) values(#{deptNo},#{dname},#{loc})
	</insert>


### 删除对象

1. 添加删除方法

2. 增加删除的对应规则

代码:

	interface DeptMapper{
		void deleteDept(Dept dept);
	}
	//修改配置文件 DeptMapper.xml
	<delete id="deleteDept"
		parameterType="cn.tedu.entity.Dept">
		delete from dept where deptNo=#{deptNo}
	</delete>


### 查找对象的方法

1. 修改Mapper接口,添加查找方法

2. 修改Mapper.xml,添加查找方法和SQL映射关系

代码:


	interface DeptMapper{
		//...
		Dept findDeptById(Integer deptNo);
	}
	//在DeptMapper.xml 中添加映射关系
	<select id="findDeptById"
		resultType="cn.tedu.entity.Dept"
		parameterType="java.lang.Integer">
		select deptNo, dname, loc from Dept
		where deptNo=#{deptNo}
	</select>

> resultType 是结果集行映射的类型

> 注意:MyBatis的Mapper接口方法参数只能有一个



### 更新对象的方法

代码:

	interface DeptMapper{
		//...
		void updateDept(Dept dept);
	}
	//DeptMapper.xml添加映射关系
	<update id="updateDept"
		parameterType="cn.tedu.entity.Dept">
		update dept set dname=#{dname},
		loc=#{loc} where deptNo=#{deptNo}
	</update>

### 查询部分列作为结果


代码:

	interface DeptMapper{
		//...
		List<Map<String, Object>> findDeptAll();
	}
	//DeptMapper
	<select id="findDeptAll"
		resultType="java.util.Map">
		select dname as "dname", 
		loc as "loc" from dept
	</select>

### SqlSession直接执行SQL

>    SqlSession 直接提供了CRUD方法,可以直接根据sql的ID执行sql语句。其中SQL ID是在Mapper.xml 中定义的SQL ID。

> 执行结果与Mapper接口执行结果一样。

> 这种方式为程序员执行SQL提供了多种选择。



  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值