Mybatis环境搭建以及案例 SqlSession对象的方法

Mybatis环境搭建两种方法

  • (1)mybatis下载
    mybaits的代码由github.com管理
    下载地址:https://github.com/mybatis/mybatis-3/releases
    (2)导入jar包
    测试相关的包: junit hamcrest
    日志相关的包:log4j-1.2.16 slf4-api slf4j-log4j12
    数据库相关jar包: mysql-connector
    Mybatis先关jar包: mybaits-3.4.5
  • 在配置文件pom.xml中导入依赖
<dependencies>
        <!-- junit-->
        <dependency>
            <groupId>junit</groupId>
            <artifactId>junit</artifactId>
            <version>4.11</version>
            <scope>test</scope>
        </dependency>
        <!-- MySql -->
        <dependency>
            <groupId>mysql</groupId>
            <artifactId>mysql-connector-java</artifactId>
            <version>5.1.32</version>
        </dependency>
        <!-- Mybatis -->
        <dependency>
            <groupId>org.mybatis</groupId>
            <artifactId>mybatis</artifactId>
            <version>3.4.5</version>
        </dependency>
        <!--日志包-->
        <dependency>
            <groupId>org.slf4j</groupId>
            <artifactId>slf4j-log4j12</artifactId>
            <version>1.7.25</version>
        </dependency>
        <dependency>
            <groupId>log4j</groupId>
            <artifactId>log4j</artifactId>
            <version>1.2.17</version>
        </dependency>

    </dependencies>

Mybatis的操作步骤

  • mybatis开发流程
    1 创建SqlSessionFactoryBuilder对象
    2 创建SqlSessionFactory对象
    3 加载SqlMapConfig.xml配置文件
    4 创建SqlSession对象
    5 执行SqlSession对象执行删除
    6 打印结果
    7 释放资源

Mybatis的入门案例-Java代码编写

  • (1)先获取Session
  • (2)再进行增删改查操作
SqlSession sqlSession = MySessionUtils.getSession();
        //select * from user where id =1;
        UserDao dao = sqlSession.getMapper(UserDao.class);//内部就使用你编写接口来生成代理对象
        //代理对象的方法内部 查询sql,并且执行jdbc代码
        User user = dao.findById(1);
        System.out.println(user);
        //定义接口
        sqlSession.close();
  • 创建session工具包
public class MySessionUtils {
    private static SqlSessionFactory sessionFactory;
    //static 静态代码,在类加载的时候执行一次,且只执行一次
    static{
//  》1 创建SqlSessionFactoryBuilder对象
        SqlSessionFactoryBuilder sqlSessionFactoryBuilder = new SqlSessionFactoryBuilder();
// 》2 创建SqlSessionFactory对象
        InputStream inputStream = MySessionUtils.class.getClassLoader().getResourceAsStream("SqlMapConfig.xml");
        sessionFactory = sqlSessionFactoryBuilder.build(inputStream);//加载核心配置文件 参1 输入流
//        》3 加载SqlMapConfig.xml配置文件
    }
    public static SqlSession getSession() {
//        》4 创建SqlSession对象
        SqlSession sqlSession = sessionFactory.openSession();
        return sqlSession;
    }
}

UserDao创建方法

public User findById(int id);

UserDao.xml映射文件

<?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">
<!--
使用代理以后 当前的映射文件要与接口同名,并且放在同一个位置
使用代理以后 namespace要求写接口的全类名 包名+类名=全类名
UserDao-->
<mapper namespace="com.wxx.dao.UserDao">
    <!-- 使用代理以后id必须是方法名-->
    <select id="findById" parameterType="int" resultType="com.wxx.bean.User">
        select * from user where id =#{id};
    </select>

</mapper> 
SqlMapConfig.xml配置映射文件
```xml
    <!-- 配置多个映射文件-->
    <mappers>
        <mapper resource="UserMapper.xml"/>
        <mapper resource="UserDao.xml"/>
    </mappers>
©️2020 CSDN 皮肤主题: 1024 设计师:上身试试 返回首页