【MyBatis入门到入土精讲】MyBatis介绍
在web应用中,与数据库的交互是永恒的课题。回顾过去,在ORM框架出现之前,我们采用原始的JDBC编程与数据库打交道:从数据库获取数据,再将数据映射成对象;或者将对象映射为表的字段,将用户想要保存的信息存储到数据库中。
传统的JDBC与数据库的交互
import java.sql.Connection;import java.sql.DriverManager;import java.sql.PreparedStatement;import java.sql.ResultSet;/*** @author Evan*/public class JDBCTest {public static void main(String[] args) throws Exception {Connection connection = null;PreparedStatement prepareStatement = null;ResultSet rs = null;try {// 加载驱动Class.forName("com.mysql.jdbc.Driver");// 获取连接String url = "jdbc:mysql://127.0.0.1:3306/ssmdemo";String user = "root";String password = "123456";connection = DriverManager.getConnection(url, user, password);// 获取statement,preparedStatementString sql = "select * from tb_user where id=?";prepareStatement = connection.prepareStatement(sql);// 设置参数prepareStatement.setLong(1, 1l);// 执行查询rs = prepareStatement.executeQuery();// 处理结果集while (rs.next()) {System.out.println(rs.getString("userName"));System.out.println(rs.getString("name"));System.out.println(rs.getInt("age"));System.out.println(rs.getDate("birthday"));}} finally {// 关闭连接,释放资源if (rs != null) {rs.close();}if (prepareStatement != null) {prepareStatement.close();}if (connection != null) {connection.close();}}}}

其实,我们要做的事情很简单,就是从数据库获取数据,再映射到对象,然后展示给用户。既然如此,是否可以将这个过程封装起来,然后给业务开发人员调用呢?答案是肯定的。
ORM框架的出现
聪明的程序员为了偷懒什么事都干得出来,在JDBC编程持续短暂时间之后,ORM框架出现了。ORM全称Object Relational Mapping,即对象与关系映射,它采用元数据来描述对象与关系的映射,元数据一般指的就是xml格式文件。
有了ORM框架,开发人员只要指定了持久化类与数据库表的映射关系,ORM框架运行时就能根据映射文件的信息,将对象持久化到数据库中。
是不是变得简单了很多?
现如今ORM框架代表有:Hibernate、MyBatis 、JFinal等。

什么是mybatis
MyBatis是一款优秀的持久层框架,它支持自定义SQL、存储过程以及高级映射。MyBatis 免除了几乎所有的JDBC代码以及设置参数和获取结果集的工作。MyBatis 可以通过简单的 XML 或注解来配置和映射原始类型、接口和Java对象为数据库中的记录。
这篇文章主要从Jdbc的知识来了解MyBatis 技术背景,我们也可以从Jdbc入手类比初步了解MyBatis 的底层原理,希望能为大家在学习道路上有所启发。
所有文章首发在公众号【架构师修炼指南】。
赞 (0)
