MyBatis 是一款优秀的持久层框架,它支持定制化 SQL、存储过程以及高级映射。MyBatis 避免了几乎所有的 JDBC 代码和手动设置参数以及获取结果集。MyBatis 可以使用简单的 XML 或注解来配置和映射原生信息,将接口和 Java 的 POJOs(Plain Old Java Objects,普通的 Java对象)映射成数据库中的记录。
文档顶层结构:
configuration 配置
properties 属性
settings 设置
typeAliases 类型命名
typeHandlers 类型处理器
objectFactory 对象工厂
plugins 插件
environments 环境
environment 环境变量
transactionManager 事务管理器
dataSource 数据源
databaseIdProvider 数据库厂商标识
transactionManager 事务管理器
mappers 映射器
注意:这些元素在mybatis的xml配置文件中,顺序是不可以颠倒的,否则无法构建SqlSessionFactoryBuilder实例,
也就无法构建SqlSessionFactory工厂实例,更无法构建SqlSession操作数据库命令SQL对象实例。
配置如下:
1、新建项目:Java和Web项目均可,看你使用场景,我这里建的是WEB项目。
2、导入相应的工具包:
1)mybatis-3.3.0.jar
2)mysql-connector-java-5.1.19-bin.jar
3、如果建的工程是Web项目,在WebContent文件夹下的WEB-INF文件夹下新建一个classes文件夹,用于放置配置文件:
1)新建一个文本文件,命名:DataSource.properties
2)新建一个XML文件,命名:sqlMapConfig.xml
DataSource.properties文本文件主要用来配置基本的JDBC数据源连接信息:
driver=com.mysql.jdbc.Driver
url=jdbc:mysql://localhost:3306/test
root=root
pwd=root
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">
<!-- 对事务的管理和连接池的配置 -->
<configuration>
<!-- 读入properties配置文件 -->
<properties resource="datasource.properties"></properties>
<!-- 二级缓存 -->
<settings>
<setting name="cacheEnabled" value="true"></setting>
<!-- 延迟加载 -->
<setting name="lazyLoadingEnabled" value="false"></setting>
<setting name="aggressiveLazyLoading" value="false"></setting>
</settings>
<!-- 对应的实体类的包-->
<typeAliases>
<package name="com.zh.bean"></package>
</typeAliases>
<!-- 数据源配置 -->
<environments default="development">
<environment id="development">
<!-- 事务类型 -->
<transactionManager type="JDBC" />
<dataSource type="POOLED">
<!-- 数据源配置,对应DataSource.properties配置文件 -->
<property name="driver" value="${driver}"/>
<property name="url" value="${url}"/>
<property name="username" value="${root}"/>
<property name="password" value="${pwd}"/>
</dataSource>
</environment>
</environments>
<!-- 注册xml文件,对应的实体类的XML-->
<!-- 每个实体类都会有一个mapper接口文件,就会有一个mapper.xml-->
<mappers>
<mapper resource="com/zh/mapper/userMapper.xml"></mapper>
</mappers>
</configuration>
注意这里的关键点:
(1)默认的环境 ID(比如:default=”development”)。
(2)每个 environment 元素定义的环境 ID(比如:id=”development”)。
(3)事务管理器的配置(比如:type=”JDBC”)。
(4)数据源的配置(比如:type=”POOLED”)。
配置完成!