mybatis系列六:使用getMapper方式实现面向接口的编程

mybatis有一个种面向接口的编程方式,即只写接口,不用写接口实现类。

实现这种编程方式的关键是:

  1.mapper文件的命名空间必须是包名.接口名的形式,如:com.obtk.dao.IStudentDao
 2.mapper文件里面的select标签的id值必须和接口里面的方法名称要一致

具体案例:

接口:

package com.obtk.dao;

import java.util.List;

import com.obtk.entitys.StudentEntity;

public interface IStudentDao {
	List<StudentEntity> queryByGender(String gender);
}

mapper映射文件

<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE mapper
  PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
  "mybatis-3-mapper.dtd">
<mapper namespace="com.obtk.dao.IStudentDao">
	<select id="selectById" parameterType="int" resultType="StudentEntity">
		select * from student where stuId=#{stuId}
	</select>
	<!-- resultType只表示数据库里面一行数据所能够映射的类型 -->
	<select id="queryByGender" parameterType="string" resultType="StudentEntity">
		select * from student where gender=#{gender}
	</select>
	
</mapper>
测试类:

package com.obtk.test;

import java.util.List;

import org.apache.ibatis.session.SqlSession;

import com.obtk.dao.IStudentDao;
import com.obtk.entitys.StudentEntity;
import com.obtk.utils.MybatisUtil;
/**
 * 1.mapper文件的命名空间必须是包名.接口名的形式com.obtk.dao.IStudentDao
 * 2.mapper文件里面的select标签的id值必须和接口里面的方法名称要一致
 * @author Administrator
 */
public class TestQueryMany {
	public static void main(String[] args) {
		SqlSession session=MybatisUtil.getSession();
		IStudentDao stuDao=session.getMapper(IStudentDao.class);
		List<StudentEntity> stuList=stuDao.queryByGender("男");
		for(StudentEntity stu : stuList){
			System.out.println(stu.getStuName()+","+stu.getGender());
		}
	}
}



评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

御前两把刀刀

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值