一、Mybatis介绍
Mybatis是一个dao层框架,作用于hibernate完全一样,但是由于mybatis需要手动编写每一行sql语句,所以性能上来说完全高于hibernate框架。mybatis是一个优秀的持久层框架,它对jdbc的操作数据库的过程完全封装。
二、配置
1.导jar包
导包之前要先建lib文件夹,把mybtais核心包mybatis-3.2.7.jar、 数据库连接的包mysql-connector-java-5.1.13-bin.jar、日志打印的包log4j-api-2.0-rc1.jar,还有动态代理的包
cglib-2.2.2.jar和一些其他包,具体看下图:
2.编写mybatis配置文件
其中mybatis的核心配置文件是mybatis-config.xml(文件名可以随意,但为了规范和自己他人容易识别,最好以此命名),这个文件放在根目录src下即可,但我们需要把下面的头文件复制到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">
其中http://mybatis.org/dtd/mybatis-3-config.dtd这个链接是mybatis相关的配置官方文档。
配置文件里根参数是configuration(配置),它的子参数有properties(属性)、typeAliases(类型别名),environments(多个环境配置)、environment(具体环境配置)、transactionManager(事务管理)、dataSource(数据源)、property(属性)等,如下图;
刚开始我们先可以配数据库:
<configuration>
<!-- 环境配置-->
<environments default="dev"><!-- **//运行时-->表示环境是默认的环境**
<environment id="dev"> **//表示环境是运行时环境**
<transactionManager type="JDBC"/> **//事物管理,类型是jdbc**
<dataSource type="POOLED"> **//数据源类型**
<property name="driver" value="${driver}"/> **//数据库连接驱动器**
<property name="url" value="${url}"/> **//连接数据库的URL**
<property name="username" value="${username}"/>**//数据库的用户名**
<property name="password" value="${password}"/>**//数据库密码**
</dataSource>
</environment>
</environments>
</configuration>
其实我这里连接数据库已经封装了,从属性property 里面的value值是${url}这样就可以看出来,这样封装的好处在于我可以随时在封装文件里面换数据库的用户名或者密码之类。封装文件时db.properties,文件路径和mybatis-config一样,文件内容如下:
driver=com.mysql.jdbc.Driver
url=jdbc:mysql://localhost:3306/mybatis-demo?characterEncoding=utf-8&serverTimezone=UTC&useSSL=false
username=root
password=1234
之后我们需要在mybatis里面配置它,如;