文章目录

    • 一、MyBatis简介
    • 二、MyBatis操作步骤
    • 三、MyBatis举例
    •    1、创建模块,导入坐标
    •    2、编写MyBatis核心配置文件
    •    3、编写sql映射语句
    •    4、编码

一、MyBatis简介

  1. 什么是MyBatis
    是一款优秀的持久层框架,它支持自定义 SQL、存储过程以及高级映射。MyBatis 免除了几乎所有的 JDBC 代码以及设置参数和获取结果集的工作。MyBatis 可以通过简单的 XML 或注解来配置和映射原始类型、接口和 Java POJO(Plain Old Java Objects,普通老式 Java 对象)为数据库中的记录。
  2. MyBatis的作用
    简化jdbc中代码的硬编码以及操作繁琐的缺点。

二、MyBatis操作步骤

  1. 创建模块,导入坐标
  2. 编写MyBatis核心配置文件,替换连接信息,简化硬编码问题
  3. 编写Sql映射文件,解决操作sql语句
  4. 编码
    -------1.编写POJO类(Plain Old Java Objects,普通老式 Java 对象)
    -------2.加载核心配置文件,获取SQLSessionFactory对象
    -------3.获取SqlSession对象,执行Sql语句
    -------4.释放资源

三、MyBatis举例

   1、创建模块,导入坐标

将以下依赖导入pom.xml文件里面

        <dependency>
            <groupId>org.mybatis</groupId>
            <artifactId>mybatis</artifactId>
            <version>3.4.5</version>
        </dependency>

   2、编写MyBatis核心配置文件

1.在resources下新建一个mybatis-config.xml文件

2.将下列文件复制到里面

<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE configuration
  PUBLIC "-//mybatis//DTD Config 3.0//EN"
  "http://mybatis/dtd/mybatis-3-config.dtd">
<configuration>
  <environments default="development">
    <environment id="development">
      <transactionManager type="JDBC"/>
      <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>
  </environments>
  <mappers>
    <mapper resource="org/mybatis/example/BlogMapper.xml"/>
  </mappers>
</configuration>

3.修改连接信息

   3、编写sql映射语句

1.在resources下新建一个xml文件,将以下内容复制进去。

<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE mapper
  PUBLIC "-//mybatis//DTD Mapper 3.0//EN"
  "http://mybatis/dtd/mybatis-3-mapper.dtd">
<mapper namespace="org.mybatis.example.BlogMapper">
  <select id="selectBlog" resultType="Blog">
    select * from Blog where id = #{id}
  </select>
</mapper>

2.修改id,类型,以及你的sql语句

如果你sql语句爆红,可能是idea无法找到你对应表里面的内容,可以把数据库部署到idea里面。(参看我另一篇博客)

   4、编码

1.创建一个对应的数据库的实体类,我数据库里面存放的是用户信息,所以我定义了一个User类。
2.将以下代码放在你的测试类或者自己定义的类里面
第一行主要用于获取驱动以及连接路径(我们在第二步配置核心文件里面已经配置了)
第二行就是把数据库的资源加载到一个字节输入流里面
第三行建立一个sqlSessionFactory对象,用于后面sql语句的执行

    String resource = "mybatis-config.xml";
    InputStream inputStream = Resources.getResourceAsStream(resource);
    SqlSessionFactory sqlSessionFactory = new SqlSessionFactoryBuilder().build(inputStream);

3.获取SqlSession对象,用来执行sql语句

	        SqlSession sqlSession = sqlSessionFactory.openSession();

4.执行sql

	List<User> user = sqlSession.selectList("mybatis.selectAll");参数是你的名称空间.要执行的sqlid
package com.mybatis.mapper;


import com.mybatis.pojo.User;
import org.apache.ibatis.io.Resources;
import org.apache.ibatis.session.SqlSession;
import org.apache.ibatis.session.SqlSessionFactory;
import org.apache.ibatis.session.SqlSessionFactoryBuilder;

import java.io.InputStream;
import java.util.List;

public class MyBatis001 {
    public static void main(String[] args) throws Exception {
        String resource = "mybatis-config.xml";
        InputStream inputStream = Resources.getResourceAsStream(resource);
        SqlSessionFactory sqlSessionFactory = new SqlSessionFactoryBuilder().build(inputStream);

        SqlSession sqlSession = sqlSessionFactory.openSession();

        List<User> user = sqlSession.selectList("mybatis.selectAll");
//
        System.out.println(user);
    }
}


执行上面步骤你就可以实现一个简单地MyBatis程序了,我这里也成功查询到我数据库里面的数据了。

更多推荐

MyBatis-实现过程详细操作步骤