Mybatis配置文件和mybatis核心对象详解
yizhiyan 浏览(47)


一、MyBatis概念

Mybatis 是一个半自动化的orm框架。源码Ibatis。
1.ORM
ORM:Object(对象) relation(关系) mapping(映射)
ORM就是将实体类的属性与数据库中标的字段一一对应。
2.半自动化
MyBatis只是将从数据库中查询的数据自动封装为对象(实体类)。但是没用实现增删改等操作是将实体类自动转换为数据。
所以Mybatis只是一个半自动框架。
3.持久化
持久化指数据在瞬时状态与持久状态之间转换的过程。
1)瞬时状态
数据在缓存或内存中,则数据处于瞬时状态。
如:
打开记事本文件,文件处于编辑状态,数据处于内存中——临时储存
数据库读取出来,处于操作状态,数据处于内存中——临时储存
2)持久状态
数据处于硬盘上,则数据处于持久状态。
如:
记事本文件,及未打开状态,数据处于硬盘中——永久储存
数据库文件,及未打开状态,数据处于硬盘中——永久储存
3)持久化
数据由瞬时->持久
如:
记事本保存数据——保存
数据库保存数据——保存
数据由持久->瞬时
如:
读取记事本数据——读取
读取数据库数据——读取
二、MyBatis核心对象
1.SqlSessionFactoryBuilder
用来启动MyBatis的。通过build方法来启动。
一个web项目只有一个该类型的对象
2.SqlSessionFactory
通过openSession来新开一个session。
一个web项目只有一个该类型的对象。
3.SqlSession
用于操作数据库的增删改查。
每一次操作前都需要新打开一个,用完后关闭SqlSession对象。
SqlSession对象线程级别的,多个session之间是独立的。
三、Mybatis核心配置文件
Mybatis核心配置文件:Mybatis-config.xml
1.configuration——Mybatis根节点,所有配置都在这个节点下 。
2.properties——引入外部配置文件
如下:<properties resource="database.properties"></properties>
3.typeAliases——别名设置
1)没个实体类都取一个别名,以后可以通过使用别名代替这个实体类。 type:被起别名的类 alias:别名 
如:<typeAlias type="cn.jbit.pojo.User" alias="User" />
2)指定实体类所在包
在mapper.xml 使用实体类名等同于使用权限定名。
如 resultType="User" 等同于 resultType="cn.jbit.pojo.User"
<package name="cn.jbit.pojo"/>
4.environments——数据库环境配置
default:使用已配置的数据库环境的id值
5.environment——一套数据库的配置
id:是当前数据库环境的唯一标识符,主要在environments节点的default使用。
1)transactionManager——用于处理增删改的事物提交方式(commit)
<transactionManager type="JDBC" />
2)数据源(和数据库的连接) type:连接方式,pooled:缓冲池方式
6.mapper节点
关联mapper.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 resource="database.properties" />
	<!-- 取别名 -->
	<typeAliases>
		<package name="com.smbms.pojo"/>
	</typeAliases>
	<!-- 配置文件 -->
	<environments default="mysqlSmbms">
		<environment id="mysqlSmbms">
			<transactionManager type="JDBC"/>
			<dataSource type="POOLED">
				<property name="driver" value="${driver}"/>
				<property name="url" value="${url}"/>
				<property name="username" value="${user}"/>
				<property name="password" value="${password}"/>
			</dataSource>
		</environment>
	</environments>
	<mappers>
		<mapper resource="com/smbms/dao/UserMapper.xml"/>
	</mappers>
</configuration>
打赏

发表评论

电子邮件地址不会被公开。 必填项已用*标注

最新文章