MyBatis接口式编程

从面向接口的方面,修改Hello World程序
首先先建立一个接口EmployeeMapper,在接口中写如下代码:

public interface EmployeeMapper{
public Employee getEmpById(Integer id);
}

EmployeeMapper.xml中的代码,其中namespace不再是自己写的 ,而是接口的全类名,将接口与配置文件进行绑定,将id 与方法名也进行绑定

  <?xml version="1.0" encoding="UTF-8" ?>
    <!DOCTYPE mapper
      PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" 
      "http://mybatis.org/dtd/mybatis-3-mapper.dtd"> <mapper namespace="com.guigu.mybatis.EmployeeMapper"> 
<!--namespace为命名空间, id为唯一标识,resultType返回值类型用类全路径,#{id}从传递的参数中取出id 值>
      <select id="getEmpById" resultType="com.guigu.mybatis.Employee"> 
        select  id,last_name lastName,email,gender from  tbl_employee where id = #{id}
      </select>
    </mapper>

写一个测试方法代码如下

 public void test(){
    String source="mybatis-config.xml";
    InputStream inputstream=Resource.getResourceAsStream(source);
    SqlSessionFactory sqlSessionFactory=new SqlSessionFactoryBuilder().build(inputstream);
    SqlSession sqlSession=sqlSessionFactory.openSession();
    try{
    //获取接口的实现类对象,如果现实绑定,会为接口自动创建一个代理对象,代理对象进行增删改查
EmployeeMapper mapper=sqlSession.gerMapper(EmployeeMapper.class);
    //接口的实现类对象调用方法
    Employee employee=mapper.getEmpById(1);}
    finally{
    sqlSession.close();}
    }

注:接口式编程
1.接口mapper—》xxMapper.xml
2.sqlsession 代表和数据库一次会话,用完必须关闭
3.sqlsession和connection 一样都是非线程安全,每次使用都应该获取对象,不要放在共享中
4.mapper接口没有实现类,但是mybatis会为这个接口生成一个代理对象
5.两个重要的配置文件,mybatis-config.xml是全局配置文件
数据库连接池信息,事务管理器信息等。。系统运行环境
SQL映射文件必须有,保存了每一个SQL语句的映射信息

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值