zoukankan      html  css  js  c++  java
  • mybatis面向接口的编程

    一.实现面向接口编程

      具体操作方法如下:

        第一:编写一个接口(IUser.java)

          接口暂时为空接口,接口文件包路径:com.gusi.demo.idao.IUser

        第二:修改映射文件(User.xml)

          将namespace属性值改为上面定义接口的类的全名称com.gusi,demo.idao.IUser。然后将每个sql语句的id记录下来,接受参数类型记录下来,以及返回类型记录下来

      

     1 <mapper namespace="com.gusi.demo.idao.IUser">  
     2 
     3    <resultMap type="com.gusi.demo.pojo.User" id="UserResult">  
     4      <id column="id" jdbcType="INTEGER" property="id"/>  
     5      <result column="username" jdbcType="VARCHAR" property="username"/>  
     6      <result column="password" jdbcType="VARCHAR" property="password.encrypted"/>  
     7      <result column="administrator" jdbcType="BOOLEAN" property="administrator"/>  
     8    </resultMap>  
     9   
    10   <select id="find" parameterType="long" resultMap="UserResult">  
    11     SELECT * FROM user WHERE id = #{id:INTEGER}  
    12   </select>  
    13 </mapper>  

        第三:给上面的每一个sql语句在接口类IUser.java中添加一个接口方法

          接口方法的返回类型就为上面记录的返回类型:com.gusi.demo.poji.User类型,当然这个地方也支持java基本类型和String类型

          接口方法的名称就为上面记录sql语句的id:find,这个id在同一个namespace下是唯一的

          接口方法的请求参数就为上面记录的参数类型:long,当然这个地方是支持javaBean类型的参数类型

    1 package com.gusi.demo.idao;  
    2 public interface IUser{  
    3     public com.gusi.demo.pojo.User find(long id);//这就是对应的接口方法之一  
    4 }  

        第四:测试接口

    1 SqlSession sqlSession = sqlSessionFactory.getSqlSession();//获得一个sqlSession  
    2 //以前代码写法如下:  
    3 //User user = sqlSession.selectOne("User.find",1L);  
    4 //改为面向接口编程:  
    5 IUser iUser = sqlSession.getMapper(IUser.class);//通过sqlSession获取对应注册接口  
    6 User user = iUser.find(1L);//直接调运接口方法就可以获得对应的User对象  
  • 相关阅读:
    《Linux内核分析》读书笔记(四章)
    LINUX内核分析第七周学习总结
    linux内核分析第六周学习笔记
    《Linux内核分析》第13章
    《Linux内核分析》实践4
    《Linux内核分析》实践3
    《Linux内核分析》实践2
    《Linux内核设计》第17章学习笔记
    实践指导1
    《Linux内核分析》期终总结&《Linux及安全》期中总结
  • 原文地址:https://www.cnblogs.com/sxl920624/p/6738389.html
Copyright © 2011-2022 走看看