知识点
mybatis环境搭建-前期准备
mybatis的环境搭建
环境搭建的注意事项
目标
能够创建测试用的表
能够搭建mybatis的开发环境
能够知道搭建环境的注意事项
前期准备
用IDEA创建maven
创建maven项目day01_eesy_01mybatis
用Navicat创建数据库essymybatis并用以下字段创建user表
结果如下
为user插入几条数据
接下来为maven工程的pom.xml加上一个packaging的打包方式(我们用**jar**的方式),接下来再导入mybatis的坐标依赖
项目中的pom.xml文件坐标引入:
<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0</modelVersion>
<groupId>com.itheima</groupId>
<artifactId>day01_eesy_.1mybatis</artifactId>
<version>1.0-SNAPSHOT</version>
<packaging>jar</packaging>
<dependencies>
<dependency>
<groupId>org.mybatis</groupId>
<artifactId>mybatis</artifactId>
<version>3.5.4</version>
</dependency>
</dependencies>
</project>
使得jar包3.5.4成功导入
因为是数据库的操作,所以还需要mysql的坐标,同样的还有日志部分,还有单元测试。有这四个坐标就足够了
<dependencies>
<dependency>
<groupId>org.mybatis</groupId>
<artifactId>mybatis</artifactId>
<version>3.5.4</version>
</dependency>
<dependency>
<groupId>mysql</groupId>
<artifactId>mysql-connector-java</artifactId>
<version>5.1.6</version>
</dependency>
<dependency>
<groupId>log4j</groupId>
<artifactId>log4j</artifactId>
<version>1.2.12</version>
</dependency>
<dependency>
<groupId>junit</groupId>
<artifactId>junit</artifactId>
<version>4.10</version>
</dependency>
</dependencies>
其中前两个尤为重要!!
至此准备数据库,创建maven工程,导入maven坐标已完成,前期准备结束
mybatis的环境搭建
有了坐标,有了数据库,还要有实体类。
在idea中新建class——User
该类实现 Serializable接口
根据表user创建实体类
注意表中列命和实体类属性一样
package com.domain
并创建getters and setters方法和tostring()方法。
在操作数据库时基于Dao的,所以创建一个UserDao的接口(用户的持久层接口)
创建提供查询的所有方法findAll()方法。
在resources新建mybatis的核心配置文件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">
配置mysql的环境:
<?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>
<!--配置环境-->
<environments default="mysql"><!--要想这些标签起作用,下面的标签都得配置-->
<!--配置mysql的环境-->
<environment id="mysql">
<!--配置事务的类型-->
<transactionManager type="JDBC"></transactionManager>
<!--配置数据源(连接池)-->
<dataSource type="POOLED">
<!--配置连接数据库的4个基本信息-->
<property name="driver" value="com.sql.jdbc.Driver"/>
<property name="url" value="jdbc:mysql://localhost:3306/eesy.mybatis"/>
<property name="username" value="root"/>
<property name="password" value="123456"/>
</dataSource>
</environment>
</environments>
</configuration>
创建与接口映射的配置文 件 IUserDao.xml
在resources中创建包com.it.dao创建IUserDao.xml文件
创建位置:必须和持久层接口在相同的包中
名称:必须以持久层接口名称命名文件名,拓展名为.xml
在里面加入约束
<!--针对userdao的配置>
<!--加入约束-->
<?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">
<mapper namespace="com.it.dao.IUserDao">
<!--配置查询所有-->
<select id=" findAll"><!--id里为dao的方法名称-->
select * from user;
</select>
</mapper>
环境搭建的注意事项
步骤:
1、创建maven工程并导入坐标; 2、创建实体类和dao的接口; 3、创建mybatis的主配置文件(sqlMapConifg.xml); 4、创建映射配置文件IUserDao.xml
注意事项:
1、 创建IUserDao.xml和IUserDao.java时,名称是为了和我们之前的知识保持一致。在mybatis中它吧持久层的操作接口名字和映射文件也叫做:Mapper。所以IUserDao和IUserMapper是一样的。
2、在idea中创建目录时,它和包是不一样的,包在创建时:com.it.dao它是三级结构。目录(Directory)在创建时:com.it.dao是一级目录。
3、mybatis的映射配置位置必须和dao接口的包结构相同。
4、映射配置文件的mapper标签namespace属性的取值必须是dao接口的全限定类名。(后边会解释)
5、映射文件的操作配置(select),id属性的取值(select)必须是dao接口的方法名
当我们尊从了第3,4,5点后,我们在开发中就无须在写dao的实现类。剩下的功能将由mybatis为我们实现。提高开发效率