MyBatis架构与基本配置
2019-02-18 本文已影响104人
花无缺_0159
【目录】
1 MyBatis架构
2 MyBatis基本配置
3 搭建第一个MyBatis项目
1 MyBatis架构
MyBatis架构图接口层:Mybatis提供操作数据库的一些接口,程序员使用。
数据处理层:Mybatis负责接受参数,解析参数,并且返回映射结果集。
基础支持层:Mybatis的一些运行环境比如数据源,事务,基本配置加载(缓存)。
加载全局配置文件:加载数据源,用来操作数据库,事务。
获取SqlSesionFactory:用来生成sqlSesion,sqlsessionFactory是线程安全。
SqlSessionFactory生产出sqlSession,sqlSesion里面提供一系列操作数据库的接口。
程序员通过调用sqlSession提供的接口来操作数据。
2 MyBatis基本配置
开发环境:Eclipse+JDK+Mysql+Mybatis的jar文件。
MyBatis目前已经迁移到github上,访问这里可以获取到MyBatis的各种版本。
3 搭建第一个MyBatis项目
- 创建名为HelloMyBatis的java项目。
2.准备好需要的jar包,手动导入。
mybatis-3.4.6.jar以及lib里所有的包 数据库驱动包 手动导入- 创建测试数据库与测试用例。
创建come.test.bean包,创造一个简单的bean对象。
User.java:
package com.test.bean;
import java.util.Date;
public class User {
/**
* CREATE TABLE `user` (
`u_id` INT(11) NOT NULL AUTO_INCREMENT COMMENT '用户id',
`u_username` VARCHAR(64) NOT NULL COMMENT '用户名',
`u_password` VARCHAR(64) NOT NULL COMMENT '用户密码',
`u_sex` VARCHAR(16) DEFAULT NULL COMMENT '用户性别',
`u_createTime` DATETIME DEFAULT NULL COMMENT '用户创建时间',
`u_cid` INT(11) NOT NULL COMMENT '用户国家id',
*/
private Integer u_id;
private String u_username;
private String u_password;
private String u_sex;
private Date u_createTime;
private Integer u_cid;
public Integer getU_id() {
return u_id;
}
public void setU_id(Integer u_id) {
this.u_id = u_id;
}
public String getU_username() {
return u_username;
}
public void setU_username(String u_username) {
this.u_username = u_username;
}
public String getU_password() {
return u_password;
}
public void setU_password(String u_password) {
this.u_password = u_password;
}
public String getU_sex() {
return u_sex;
}
public void setU_sex(String u_sex) {
this.u_sex = u_sex;
}
public Date getU_createTime() {
return u_createTime;
}
public void setU_createTime(Date u_createTime) {
this.u_createTime = u_createTime;
}
public Integer getU_cid() {
return u_cid;
}
public void setU_cid(Integer u_cid) {
this.u_cid = u_cid;
}
@Override
public String toString() {
return "User [u_id=" + u_id + ", u_username=" + u_username + ", u_password=" + u_password + ", u_sex=" + u_sex
+ ", u_createTime=" + u_createTime + ", u_cid=" + u_cid + "]";
}
}
创建sqlMapConfig.xml主配置文件,导入主配置文件头:
<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE configuration
PUBLIC "-//mybatis.org//DTD Config 3.0//EN"
"http://mybatis.org/dtd/mybatis-3-config.dtd">
创建mapper包,新建Mapper.xml映射文件,导入Mapper文件头:
<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE mapper
PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
"http://mybatis.org/dtd/mybatis-3-mapper.dtd">
项目目录
- 导入本地约束。
约束文件在mybatis-3.4.6\org\apache\ibatis\builder\xml目录下。
confi的key值:
http://mybatis.org/dtd/mybatis-3-config.dtd
mapper的key值:
http://ibatis.apache.org/dtd/ibatis-3-mapper.dtd
(更加详细教程可以参考这里。)
项目的前期准备已经完成,接下来基本的增、删、改、查操作,可以参看这里。