MyBatis的getMapper()接口

MyBatis的getMapper()接口
一、getMapper()接口

解析:getMapper()接口 IDept.class定义一个接口,

挂载一个没有实现的方法,特殊之处,借楼任何方法,必须和小配置中id属性是一致的

通过代理:生成接口的实现类名称,在MyBatis底层维护名称$$Dept_abc,selectDeptByNo()

相当于是一个强类型

Eg

第一步:在cn.happy.dao中定义一个接口

复制代码
package cn.happy.dao;

import java.util.List;

import cn.happy.entity.Dept;

public interface IDeptDao {
//查看全部---------getAllDept要和小配置里面的id一样
public List getAllDept();
}
复制代码
  第二步:IDept.xml配置小配置

解析:select里面的Id属性要和接口里面的接口方法名一样;mapper的namespace属性包名是cn.happy.dao.IDeptDao接口

复制代码

<?xml version="1.0" encoding="UTF-8" ?> select * from Dept 复制代码   第三步:测试类

解析:查看全部信息有两种方法

1)session.selectList(“cn.happy.dao.IDeptDao.getAllDept”);-------实体类.小配置里面的Id名称============字符串

2)IDeptDao mapper = session.getMapper(IDeptDao.class);相当于实现类,getMapper是一个强类型
复制代码
// 01查看全部信息getMapper()接口类的方法名要和小配置的id一样
@Test
public void testSelectAll() {
SqlSession session = factory.openSession();
//用的是弱类型实体类.小配置里面的Id名称====字符串
/List list = session.selectList(“cn.happy.dao.IDeptDao.getAllDept”);
for (Dept dept : list) {
System.out.println(dept.getDeptName());
}
/

     // 用getMapper方法HIbernate帮我们在内存中代理出一个接口的实现类======相当于强类型
     //mapper是一个实现类对象
    IDeptDao mapper = session.getMapper(IDeptDao.class);
    List<Dept> list = mapper.getAllDept();
    for (Dept dept : list) {
        System.out.println(dept.getDeptName());
    }

复制代码

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值