Mybatis 简单使用

导入依赖包

版本号去maven仓库中挑选合适自己的。

<dependency>
      <groupId>mysql</groupId>
      <artifactId>mysql-connector-java</artifactId>
      <version></version>
</dependency>
<dependency>
      <groupId>org.mybatis</groupId>
      <artifactId>mybatis</artifactId>
      <version></version>
</dependency>

准备工作

  1. Java 实体类,用于存放数据库信息
  2. Mapper 接口
  3. Mapper xml,写sql语句
public class User {
    private Integer id;
    private String userName;
    // getter setter
}
public interface UserMapper {
    User selectByPrimaryKey(Integer id);
}
<?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="org.example.mybatis.mapper.UserMapper">
	<select id="selectByPrimaryKey" resultType="org.example.mybatis.entity.User" parameterType="java.lang.Integer">
		select id, user_name from t_user where id = #{id,jdbcType=INTEGER}
	</select>
</mapper>

Mybatis 查询步骤

  1. 读取mybatis配置文件创建SqlSessionFactory
  2. 获取sqlSession
  3. 获取对应的mapper
  4. 执行查询语句并返回结果

1. 创建SqlSessionFactory

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

2. 获取sqlSession

SqlSession sqlSession = sqlSessionFactory.openSession();

3. 获取对应的mapper

UserMapper mapper = sqlSession.getMapper(UserMapper.class);

4. 执行查询语句并返回结果

User user = mapper.selectByPrimaryKey(1);

几个重要的对象

对象 作用 生命周期
SqlSessionFactoryBuilder 读取配置文件并创建SqlSessionFactory 方法级
SqlSessionFactory 工厂模式,创建SqlSession 程序级
SqlSession 代表一次数据库链接,可以直接发送sql执行,也可以调用Mapper访问数据库。线程不安全,要保证线程独享。 方法级
SQL Mapper 由一个Java接口和一个xml文件组成,包含了要执行的sql语句和结果集映射规则 方法级
posted @ 2020-12-17 10:39  qianbuhan  阅读(97)  评论(0)    收藏  举报