Mybatis框架开发快速入门
1.准备环境
1.1创建数据库、创建表
-- 1.创建数据库 CREATE DATABASE mybatis DEFAULT CHARACTER SET utf8; -- 2.创建用户表 DROP TABLE IF EXISTS USER; CREATE TABLE USER ( id INT(11) NOT NULL AUTO_INCREMENT, username VARCHAR(32) NOT NULL COMMENT '用户名称', birthday DATETIME DEFAULT NULL COMMENT '生日', sex CHAR(1) DEFAULT NULL COMMENT '性别', address VARCHAR(256) DEFAULT NULL COMMENT '地址', PRIMARY KEY (id) ) ENGINE=INNODB DEFAULT CHARSET=utf8; INSERT INTO USER(id,username,birthday,sex,address) VALUES (41,'老王','2018-02-27 17:47:08','男','北京'),(42,'小二王','2018-03-02 15:09:37','女','北京金燕龙'), (43,'小二王','2018-03-04 11:34:34','女','北京金燕龙'), (45,'小李','2018-03-04 12:04:06','男','北京金燕龙'), (46,'老王','2018-03-07 17:37:26','男','北京'), (48,'小马宝莉','2018-03-08 11:44:00','女','北京修正'); SELECT * FROM USER;
1.2 创建项目 编写实体类

1.3 添加依赖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>JavaBase2</groupId> <artifactId>mybatis01_01_mybatis_hello</artifactId> <version>1.0-SNAPSHOT</version> <dependencies> <!--mybatis支持包--> <dependency> <groupId>org.mybatis</groupId> <artifactId>mybatis</artifactId> <version>3.4.5</version> </dependency> <!--数据库驱动包--> <dependency> <groupId>mysql</groupId> <artifactId>mysql-connector-java</artifactId> <version>5.1.30</version> </dependency> <!--日志包--> <dependency> <groupId>log4j</groupId> <artifactId>log4j</artifactId> <version>1.2.17</version> </dependency> </dependencies> </project>
1.4 SqlMapConfig.xml 主配置
1.41 配置内容
数据库连接配置
数据库连接池 、事务管理
加载接口的映射
1.42参考约束文件

1.43配置实现

<?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> <!--default 表示默认使用哪一个运行环境配置--> <environments default="mysql"> <!--id="mysql" 表示mysql的运行环境配置--> <environment id="mysql"> <!--事务管理器配置:基于JDBC的事务控制--> <transactionManager type="JDBC"></transactionManager> <!--连接池配置(UNPOOLED/POOLED/JNDI)--> <!--type="POOLED" 表示使用mybatis自带的连接池--> <dataSource type="pooled"> <property name="driver" value="com.mysql.jdbc.Driver"></property> <property name="url" value="jdbc:mysql:///mybatis?characterEncoding=utf8"></property> <property name="username" value="root"></property> <property name="password" value="root"></property> </dataSource> </environment> </environments> <!--加载接口的映射文件--> <mappers> <!--必须放到类路径下--> <mapper resource="com/itheima/dao/IUserDao.xml"></mapper> </mappers> </configuration>
1.5 dao 接口

1.6 dao接口映射

IUserDao.xml 文件内容

1.7 加载接口映射文件

1.8 测试
public class UserDaoTest { @Test public void findAll() throws IOException { //1. 加载文件流 InputStream in = Resources.getResourceAsStream("SqlMapConfig.xml"); //2. 创建工厂构造器 SqlSessionFactoryBuilder builder = new SqlSessionFactoryBuilder(); //3. 创建SqlSession工厂 SqlSessionFactory factory = builder.build(in); //3. 根据SqlSession的工厂,创建SqlSession对象 SqlSession session = factory.openSession(); //4. 创建接口的代理对象 IUserDao userDao = session.getMapper(IUserDao.class); //5. 执行接口方法 List<User> list = userDao.findAll(); //测试 System.out.println(list); //6. 关闭 session.close(); in.close(); } }
测试结果:

缺少日志文件。所以,引入日志文件:log4j.properties


浙公网安备 33010602011771号