MyBatis流程学习
从JDBC开始:MyBatis是封装了JDBC
1 public static void main(String[] args) throws Exception { 2 Connection connection = null; 3 PreparedStatement preparedStatement = null; 4 ResultSet resultSet = null; 5 try { 6 // 加载驱动 7 Class.forName("com.mysql.jdbc.Driver"); 8 9 // 创建数据库连接 10 String url = "jdbc:mysql://127.0.0.1:3306/mybatis_0716"; 11 String user = "root"; 12 String password = "123456"; 13 14 connection = DriverManager.getConnection(url, user, password); 15 // 获取statement对象 16 String sql = "SELECT * FROM tb_user WHERE id = ?"; 17 preparedStatement = connection.prepareStatement(sql); 18 19 // 设置参数,有2个参数,第一个是下标,从1开始,第二个是参数值 20 preparedStatement.setLong(1, 1L); 21 22 // 执行查询 23 resultSet = preparedStatement.executeQuery(); 24 25 // 遍历结果集 26 while (resultSet.next()) { 27 System.out.println("id = " + resultSet.getLong("id")); 28 System.out.println("name = " + resultSet.getString("name")); 29 System.out.println("passwd = " + resultSet.getString("password")); 30 } 31 } finally { 32 // 关闭连接释放资源 33 if (null != resultSet) { 34 resultSet.close(); 35 } 36 if (null != preparedStatement) { 37 preparedStatement.close(); 38 } 39 if (null != connection) { 40 connection.close(); 41 } 42 } 43 }
1.1. Mybatis的整体架构
SRE实战 互联网时代守护先锋,助力企业售后服务体系运筹帷幄!一键直达领取阿里云限量特价优惠。
1、 mybatis配置文件,有2类配置文件
a) 全局配置文件,只能有一个,文件名不是固定的,约定文件名:mybatis-config.xml,配置了运行参数、插件、连接池等信息。
b) Mapper.xml,映射文件,在整个mybatis中可以有多个配置文件,配置多个Statement(SQL)
2、 通过配置文件构造出SqlSessionFactory
3、 通过SqlSessionFactory获取到Sqlsession,通过SqlSession就可以操作数据库。
4、 SqlSession同底层的执行器来执行Statement(SQL),mybatis提供了2种执行器的实现
a) 基本实现
b) 带有缓存功能的实现
5、 执行器通过定义的Mapped Statement对象来执行SQL
6、 参数传入:参数类型有三种,HashMap、基本数据类型、POJO对象
7、 结果输出:输出结果集类型有三种,HashMap、基本数据类型、POJO对象
1.1. 编写第一个mybatis程序
1.1.1. 导入依赖
<!--mybatiis核心依赖> <dependency> <groupId>org.mybatis</groupId> <artifactId>mybatis</artifactId> <version>3.2.8</version> </dependency>
1.1.1. 编写配置文件
1.1.1. 构建SqlSessionFactory
1.1.1. 根据id查询用户信息
定义MyMapper.xml:
加入到Mybatis全局配置文件中:
默认是在工程的resurces中查找文件。
如果不加入会异常:
Mybatis使用步骤总结:
使用Mybatis解决了JDBC中的问题,可以完美替代JDBC操作。

更多精彩