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

 

 

 

 

posted @ 2018-09-27 19:44  Jskea  阅读(83)  评论(0)    收藏  举报