首先准备数据库表
表结构
数据
jar包准备
因为使用的是Eclipse开发,所以未用Maven管理jar包,需要导入Mybatis的jar包。
将Mysql驱动包以及Mybatis的jar包,添加到系统路径,commons-lang是apche的一个工具包,log4j和slf4j是用于输出日志信息的jar包,此处不做赘述。
搭建项目包结构
因为使用了mapper开发,所以dao层根据mybatis官网的推荐改成了mapper层
新建一个resource的资源文件夹,里面用于存放项目的资源配置文件
准备实体类
在domain里面准备实体类User
生成对应的setter/getter方法、有参构造无参构造、建议也生成一个toString方法方便打印输出
数据库配置文件(四大金刚)
MyBatis核心配置文件
<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE configuration
PUBLIC "-//mybatis.org//DTD Config 3.0//EN"
"https://mybatis.org/dtd/mybatis-3-config.dtd">
<!-- 这是我们的根标签,代表整个mybatis的配置项 -->
<configuration>
<!-- 引入配置文件信息,这里不能加classpath:。
resource:引入类路径下的资源,即classpath,所以不需要写classpath:
url:引入网络路径或磁盘路径下的资源
-->
<properties resource="jdbc.properties"></properties>
<typeAliases>
<!-- 单个配置:测试时使用 -->
<!-- <typeAlias type="cn.itsource.domain.Dept" alias="Dept" /> -->
<!-- 包的配置:项目中使用,添加了包之后,类名或类名首字母小写就是别名 -->
<package name="cn.test.domain" />
</typeAliases>
<!-- 这是环境变量的标签,代表整个数据库的环境配置项,该标签必须有default属性,而且是字符串 -->
<!-- 在 environments标签下可以配置多个environment,这个default代表当前项目使用的是哪个具体的环境-->
<environments default="devp">
<!-- environment标签配置的是具体的数据库环境 -->
<environment id="devp">
<!-- 事务管理器,用来配置当前数据库的事务驱动,这里使用的是JDBC的事务 -->
<transactionManager type="JDBC"/>
<!-- 数据源/连接池,这里的连接池类型type叫POOLED,这个是Mybatis自己开发的连接池 -->
<dataSource type="POOLED">
<!-- 以下四个配置项就是我们连接数据库的四大金刚 -->
<property name="driver" value="${driver}"/>
<property name="url" value="${url}"/>
<property name="username" value="${username}"/>
<property name="password" value="${password}"/>
</dataSource>
</environment>
<!-- environment标签配置的是具体的数据库环境 -->
<environment id="test">
<!-- 事务管理器,用来配置当前数据库的事务驱动,这里使用的是JDBC的事务 -->
<transactionManager type="JDBC"/>
<!-- 数据源/连接池,这里的连接池类型type叫POOLED,这个是Mybatis自己开发的连接池 -->
<dataSource type="DRUID">
<!-- 以下四个配置项就是我们连接数据库的四大金刚 -->
<property name="driver" value="com.mysql.jdbc.Driver"/>
<property name="url" value="jdbc:mysql://192.168.1.1:3306/mybatis-test"/>
<property name="username" value="root"/>
<property name="password" value="123456"/>
</dataSource>
</environment>
</environments>
<!-- mapper映射配置,这里是关联扫描我们的mapper映射文件(SQL文件) -->
<mappers>
<!-- 可以配置多个mapper文件 -->
<!-- 如果为resource=""那么里面解析的文件应该是xml文件,因为使用的是注解开发,所以此处不详细赘述xml文件开发的配置 -->
<mapper class="com.test.mapper.UserMapper"/>
</mappers>
</configuration>