前面一章,已经搭建好了eclipse,mybatis,mysql的环境,并且实现了一个简单的查询。请注意,这种方式是用SqlSession实例来直接执行已映射的SQL语句:
session.selectOne("com.yihaomen.mybatis.models.UserMapper.selectUserByID", 1)
其实还有更简单的方法,而且是更好的方法,使用合理描述参数和SQL语句返回值的接口(比如IUserOperation.class),这样现在就可以至此那个更简单,更安全的代码,没有容易发生的字符串文字和转换的错误.下面是详细过程:

在src_user源码目录下建立 com.yihaomen.mybatis.inter 这个包,并建立接口类 IUserOperation , 内容如下:

 程序代码

package com.yihaomen.mybatis.inter;
import com.yihaomen.mybatis.model.User;

public interface IUserOperation {    
    public User selectUserByID(int id);
    
}

请注意,这里面有一个方法名 selectUserByID 必须与 User.xml 里面配置的 select 的id 对应(<select id="selectUserByID")

重写测试代码

 程序代码

public static void main(String[] args) {
        SqlSession session = sqlSessionFactory.openSession();
        try {
            IUserOperation userOperation=session.getMapper(IUserOperation.class);
            User user = userOperation.selectUserByID(1);
            System.out.println(user.getUserAddress());
            System.out.println(user.getUserName());
        } finally {
            session.close();
        }
    }

整个工程结构图现在如下:

运行这个测试程序,就可以看到结果了。

来源: http://www.yihaomen.com/article/java/304.htm
来自为知笔记(Wiz)

转载于:https://www.cnblogs.com/jeffen/p/6236302.html

mybatis实战教程(mybatis in action)之二:以接口的方式编程相关推荐

  1. mybatis实战教程(mybatis in action),mybatis入门到精通

     目录(?) [-] mybatis实战教程mybatis in action之一开发环境搭建 mybatis实战教程mybatis in action之二以接口的方式编程 mybatis实战教程 ...

  2. mybatis实战教程(mybatis in action)之三:实现数据的增删改查

    前面已经讲到用接口的方式编程.这种方式,要注意的一个地方就是.在User.xml  的配置文件中,mapper namespace="com.yihaomen.mybatis.inter.I ...

  3. mybatis实战教程(mybatis in action),mybatis入门到精通(转)

    写在这个系列前面的话: 以前曾经用过ibatis,这是mybatis的前身,当时在做项目时,感觉很不错,比hibernate灵活.性能也比hibernate好.而且也比较轻量级,因为当时在项目中,没来 ...

  4. 【转】mybatis实战教程(mybatis in action)之八:mybatis 动态sql语句

    转自:除非申明,文章均为一号门原创,转载请注明本文地址,谢谢! 转载地址:http://blog.csdn.net/kutejava/article/details/9164353#t5 1. if ...

  5. 51单片机实战教程基础硬件篇(二 电子元件原理图库设计教程)

    AD原理图库设计,重点是绘制元件的电气连接单元Pin脚,然后添加其PCB 封装.Pin脚号(或名称)一定要与元件工程图中的编号(或名称)一致:Pin脚号一定要与元件的PCB封装号一致:一旦弄错而未发现 ...

  6. Android简易实战教程--第四十七话《使用OKhttp回调方式获取网络信息》

    在之前的小案例中写过一篇使用HttpUrlConnection获取网络数据的例子.在OKhttp盛行的时代,当然要学会怎么使用它,本篇就对其基本使用做一个介绍,然后再使用它的接口回调的方式获取相同的数 ...

  7. 一起学 mybatis 基础教程

    我也才刚刚开始学习mybatis 有很多不懂得地方和大家探讨,准备把我自己学习mybatis的一些心得和大家分享. mybatis 基本教程 mybatis + maven 环境搭建 mybatis ...

  8. ZigBee 3.0实战教程-Silicon Labs EFR32+EmberZnet:学习教程目录

    [源码.文档.软件.硬件.技术交流.技术支持,入口见文末] [所有相关IDE.SDK和例程源码均可从群文件免费获取,免安装,解压即用] 持续更新中,欢迎关注! 一.理论 ZigBee 3.0理论教程- ...

  9. mybatis学习教程(二)初级的增、删、查、改

    引言 本文主要从一个基础实例,讲解Mybatis的实现,已经每一步的详细讲解.我会将项目共享在百度云盘,文章最后! 1.项目结构 2.项目配置  2.1 配置SqlMapConfig.xml 根据My ...

最新文章

  1. 2.4 Go语言基础之切片
  2. 阿里好的开源项目有哪些(善用工具)
  3. 成功解决TypeError: a bytes-like object is required, not 'str'
  4. TabLayout和ViewPager
  5. openssl 对文本加密解密
  6. PHP表单提交后页面跳转,PHP在表单提交后重定向到另一个页面
  7. pyqt 界面关闭信号_PyQt从类(子窗口)发送信号返回到MainWindow(类)
  8. Flutter进阶—网络和HTTP
  9. Windows中更新python模块的命令
  10. 境内银行卡磁条信息格式
  11. Oracle-随笔笔记
  12. ember controller内调用save修改model数据时出现null的解决方案
  13. windows中批量修改文件后缀名
  14. thinkphp 检测上传的图片中是否含有木马脚本
  15. 如何自己动手免费申请软件著作权
  16. android远程协助
  17. Centos yum和pip下载离线安装包
  18. windows系统在路由器组成的局域网中共享打印机
  19. shell 字符串匹配
  20. Elasticsearch分片原理

热门文章

  1. C语言高级编程:二维数组、指针的指针、数组指针、指针数组
  2. 古代的房价跟现在比怎么样?50万能在唐朝买个茅厕吗?
  3. linux系统内核参数配置优化,Linux服务器内核参数优化
  4. 网页打开共享目录_你会做Excel文件目录吗?真的太太太太太简单了!
  5. java的abstract的意思_java – spring中的abstract =“true”是什么意思?
  6. java写一个窗体并连接MySQL_大神帮忙写一个简单地java页面,连接MySQL数据库之后能够显示数据库上的数据...
  7. python可视化图表工具_酷炫的可视化图表工具来帮忙 深度评测五大Python数据可视化工具...
  8. 电脑声音太小如何增强_感觉手机音量太小了?教你这样设置,声音立马大上许多...
  9. linux location root访问文件夹404_如何使网站支持https访问?nginx配置https证书
  10. Matlab计算机视觉/图像处理工具箱(待续)