MyBatis 的前身就是 iBatis 。是一个数据持久层(ORM)框架。
iBATIS一词来源于“internet”和“abatis”的组合,是一个基于Java的持久层框架。iBATIS提供的持久层框架包括SQL Maps和Data Access Objects(DAO),同时还提供一个利用这个框架开发的 JPetStore实例。
总体来说 MyBatis 主要完成两件事情
1.根据 JDBC 规范建立与数据库的连接;
2.通过Annotaion/XML+JAVA反射技术,实现 Java 对象与关系数据库之间相互转化。
MyBatis技术文档PPT分享
------------------------------------------分割线------------------------------------------
免费下载地址在 http://linux.linuxidc.com/
用户名与密码都是www.linuxidc.com
具体下载目录在 /2014年资料/8月/3日/Java数据持久层框架 MyBatis
下载方法见 http://www.linuxidc.com/Linux/2013-07/87684.htm
------------------------------------------分割线------------------------------------------
Java实战应用:Mybatis实现单表的增删改 http://www.linuxidc.com/Linux/2014-06/103456.htm
[Java][Mybatis]物理分页实现 http://www.linuxidc.com/Linux/2014-04/99889.htm
Mybatis快速入门教程 http://www.linuxidc.com/Linux/2013-06/85762.htm
Mybatis的关于批量数据操作的测试 http://www.linuxidc.com/Linux/2012-05/60863.htm
Mybatis中对List
一、原理介绍
Mybatis的应用是围绕着一个SqlSessionFactory实例展开的。SqlSessionFactoryBuilder根据XML映射文件创建SqlSessionFactory。
SqlSessionFactory由名字可以联想到,可以通过它获取一个SqlSession。SqlSession包含了执行sql所需要的所有方法,可以通过SqlSession实例直接运行映射的sql语句:
SqlSession session = sqlSessionFactory.openSession();
try {
Blog blog = session.selectOne("org.mybatis.example.BlogMapper.selectBlog", 101);
} finally {
session.close();
}
上面的方法是基于Mybatis的旧版本,在最新的版本中有更清晰的方法,通过一个java接口作为参数(e.g. BlogMapper.class)返回一个给定的sql映射。
SqlSession session = sqlSessionFactory.openSession();
try {
BlogMapper mapper = session.getMapper(BlogMapper.class);
Blog blog = mapper.selectBlog(101);
} finally {
session.close();
}
看到这里,您可能会对什么才是SqlSession和Mapper类真正执行的sql语句非常好奇。下面我们看一下例子.
PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
"http://mybatis.org/dtd/mybatis-3-mapper.dtd">
这个例子非常简单,是轻量级的。您可以定义众多类似这样的sql语句。这个文件在命名空间"org.mybatis.example.BlogMapper"中,定义了一个叫做"selectBlog"的sql语句。这样就可以使用一个绝对唯一路径“org.mybatis.example.BlogMapper.selectBlog”定位到这个sql语句上。
如下所示:
Blog blog = (Blog) session.selectOne("org.mybatis.example.BlogMapper.selectBlog", 101);
请 注意 这是 一个绝对唯一的 Java类 调用 方法 如何 类似 的 。 这个名字 可以 直接 映射到 命名空间 的 映射 类 ,以及 具有 相匹配的 名称 、参数 和 返回 类型 映射 select语句 的 方法 。 这使得 您可以 很 简单地调用 映射 接口 的 方法 , 这里 是 例子 :
BlogMapper mapper = session.getMapper(BlogMapper.class);
Blog blog = mapper.selectBlog(101);
如您所见,第二种方法更简洁,不需要返回值的cast。
到目前为止,我们已经了解Mybatis如何将xml映射文件与Java类映射去执行sql语句的,具体xml映射文件的含义请查询mybatis官方网站的资料 ,再此不在介绍。
更多详情见请继续阅读下一页的精彩内容: http://www.linuxidc.com/Linux/2014-08/105041p2.htm