mybatis 学习笔记(三):mapper 代理开发 dao 层 优势 通过使用mapper 代理,我们可以不需要去编写具体的实现类(使用 getMapper() 方法自动生成),只需编写接口即可,简化了原始 dao 开发的流程. 核心 mapper 代理开发 dao 层,最主要的其实就是两个步骤: 编写mapper.xml映射文件 编写mapper接口(相当于dao接口) 下面举个栗子. 步骤 1 编写 mapper.xml 映射文件 mapper.xml: <?xml version=&quo…
1.编写mapper.xml映射文件: <?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"> <!-- 命名空间:其作用是对sql进行分类管理,使用mappe…
一.SqlSession的使用范围 SqlSession中封装了对数据库的操作,如:查询.插入.更新.删除等. SqlSession通过SqlSessionFactory创建. SqlSessionFactory是通过SqlSessionFactoryBuilder进行创建. 1.1 SqlSessionFactoryBuilder SqlSessionFactoryBuilder用于创建SqlSessionFacoty,SqlSessionFacoty一旦创建完成就不需要SqlSessionF…
开发规范 Mapper接口开发方法只需要程序员编写Mapper接口(相当于Dao接口),由Mybatis框架根据接口定义创建接口的动态代理对象,代理对象的方法体同原始Dao接口实现类方法. Mapper接口开发需要遵循以下规范: Mapper.xml文件中的namespace与mapper接口的类路径相同,即namespace必须是接口的全限定名. Mapper接口方法名和Mapper.xml中定义的每个statement的id相同. Mapper接口方法的输入参数类型和mapper.xml中定…
上一篇博文总结了mybatis使用 原始dao的方法存在的一些弊端,我们肯定不会去用它,那么mybatis中该如何开发dao呢?如题所述,这篇博文主要来总结一下使用mapper代理的方法来开发dao的步骤.  使用mapper代理的方法来开发dao时,程序员只需要干两件事即可: 需要编写mapper.xml映射文件 需要编写mapper接口(相当于dao接口) 从做的工作来看,使用mybatis中使用mapper代理来开发dao会很方便,完全不需要我们去写具体的实现类,只需要写出接口即可,但是接…
看完了之前的mybatis原始的dao开发方法是不是觉得有点笨重,甚至说没有发挥mybatis 作为一个框架的优势.总结了一下,原始的dao方法有以下几点不足之处 dao接口实现方法中存在大量的模板方法,比如: SqlSession sqlSession = sqlSessionFacory.openSession(); sqlSession.commit(); sqlSession.close(); 这三行代码几乎在每个方法里面都能看见,设想能否将这些代码提取出来,大大减轻程序员的工作量. 调…
一.初探Configuration类 我们先来看一下MyBatis的XML配置文件的结构,(摘自mybatis.org) 下面这个是Configuration类的部分变量 一点不一样是不是??? 其实Configuration类是由XMLConfigBuilder(继承自BaseBuilder类)解析而来的,由如下方法(parseConfiguration)解析 private void parseConfiguration(XNode root) { try { Properties sett…
一.parameterType(输入类型) 1.1 传递简单类型 <!-- 根据用户id查询用户 --> <select id="queryUserById" parameterType="int" resultType="cn.itcast.mybatis.pojo.User"> SELECT * FROM `user` WHERE id = #{id} </select> <!-- 根据用户名模糊查询…
mapper代理方法 在我们在写MVC设计的时候,都会写dao层和daoimp实现层,但假如我们使用mapper代理的方法,我们就可以不用先daoimp实现类 当然这得需要遵守一些相应的规则: (1)Usermapper.java接口必须和Usermapper.xml名称相同,且要在同一目录下: (2)mapper.xml中namespace等于mapper接口的地址 (3)Usermapper.java接口中国的方法名和Usermapper.xml中statement的id一致 <!-- 7综…
本文将探讨使用 mapper接口,以及 pojo 包装类进行 dao 层基本开发 mybatis dao 层开发只写 mapper 接口 其中需要 开发的接口实现一些开发规范 1. UserMapper.xml 这个配置文件中的namespace应该是 mapper 接口的地址 2. UserMapper.java 中的方法名与UserMapper.xml 的 statementid 要保持一致 3. 第二点中的方法 输入参数 与 返回值均要 跟 UserMapper.xml 中配置好的 par…