MyBatis框架
一。MyBatis简介
MyBatis官网
1.1MyBatis的历史
①.MyBatis是Apache的一个开源项目iBatis,2010年6月这个项目由Apache Software Foundation 迁移到了Google Code,随着开发团队转投Google Code旗下, iBatis3.x 正式更名为MyBatis ,代码于2013年11月迁移到Github
②.iBatis一词来源于“internet”和“abatis”的组合,是一个基于Java的持久层框架。 iBatis 提供的持久层框架包括SQL Maps和Data Access Objects(DAO)
1.2MyBatis简介
①.MyBatis是支持定制化SQL,存储过程以及高级映射的优秀的持久层框架
②.MYBatis消除了几乎所有的JDBC代码和手动设置参数以及对结果集
的检索
③.将接口的Java的POJOs(Plain Ordinary Java Objects),普通的Java对象映射成数据库中的记录
④.它是一个半自动ORM(Object Relation Mapping对象关系映射)的框架,而Hibernate是全自动的
1.3为什么要使用MyBatis?
ps:对现有持久化技术的对比
1.JDBC
① SQL夹杂在Java代码块中,耦合度高导致硬编码内伤
② 维护不易且实际开发过程中SQL时有变化,频繁修改情况多见
2.Hibernate 与 JPA
① 长且复杂的SQL,对于Hibernate而言,处理起来也不容易
② 内部自动生产的SQL,不容易做特殊优化
③ 基于全映射的全自动框架,大量字段的POJO进行部分映射时比较困难,导致数据库性能下降
3.MyBatis
① 对开发者而言, 核心SQL还是需要自己优化
② SQL与Java编码分开,功能边界清晰,一个专注于业务(Java),一个专注于数据(SQL)
二。如何使用MyBatis
2.1开发环境的准备
① 要使用 MyBatis, 只需将 mybatis-x.x.x.jar 文件置于类路径(classpath)中即可。
② 如果使用 Maven 来构建项目,则需将下面的依赖代码置 于pom.xml 文件中:
Maven依赖包网址
2.2 导包
① 在pom.xml中导入MyBatis框架的jar包,MySQL驱动包,log4j的jar包
2.3创建测试表
① 创建库 CREATE DATABASE test_mybatis;
② 创建表
CREATE TABLE tbl_user(
id INT(11) PRIMARY KEY AUTO_INCREMENT,
last_name VARCHAR(50),
email VARCHAR(50),
gender CHAR(1)
);
2.4创建User类
public class User {
private Integer id ;
private String lastName;
private String email ;
private String gender ;
public Integer getId() {
return id;
}
public void setId(Integer id) {
this.id = id;
}
public String getLastName() {
return lastName;
}
public void setLastName(St