读书人

mybatis学习札记-入门

发布时间: 2013-02-20 12:23:22 作者: rapoo

mybatis学习笔记---入门

一、什么是mybatis

MyBatis 是支持普通SQL 查询,存储过程和高级映射的优秀持久层框架。

MyBatis 消除 了几乎所有的JDBC 代码和参数的手工设置以及结果集的检索。

MyBatis 使用简单的XML 或注解用于配置和原始映射,将接口和Java 的POJOs (Plan Old Java Objects ,普通的Java 对象)映射成数据库中的记录。

MyBatis 的简化并且规范了JDBC的持久化方式,同时又相对与hibernate更加灵活,可以说是介于JDBC和HIBERNATE之间的优秀持久化框架。

MyBatis的前身就是IBATIS,只是版本更新后由于某些事情进行了更名。


二、入门

1》使用顺序:

1、通过XML,或从Configuration 类的习惯准备的实例中构建的方式,创建SqlSessionFactoryBuilder 对象。

2、通过SqlSessionFactoryBuilder获取SqlSessionFactory。

1-1》XML方式示例获取SqlSessionFactoryBuilder

package org.mybatis.example;public interface BlogMapper {@Select("SELECT * FROM blog WHERE id = #{id}")Blog selectBlog(int id);} 
对于简单语句来说,使用注解代码会更加清晰,然而 Java 注解对于复杂语句来说就会
混乱,应该限制使用。因此,如果你不得不做复杂的事情,那么最好使用 XML来映射语句。
当然这也取决于你和你的项目团队的决定,看哪种更适合你来使用,还有以长久方式来
使用映射语句的重要性。也就是说,不要将自己局限在一种方式中。你可以轻松地将注解换
成 XML映射语句,反之亦然。

2、命名解析:为了减少输入量,MyBat is 对所有的命名配置元素使用如下的命名解析规则,包括语句,结果映射,缓存等。

》直接查找完全限定名(比如“com.mypackage.MyMapper.selectAllThings”),如果发现就使用。

》短名称(比如“selectAllThings”)可以用来引用任意含糊的对象。而如果有两个或两个以上的(比如“com.foo.selectAllThings”和“com.bar.selectAllThings”),那么就会得到错误报告,说短名称是含糊的,因此就必须使用完全限定名。






读书人网 >编程

热点推荐