1、MyBatis;和数据库进行交互;持久化层框架;-----》半自动化框架
1)、从原始的JDBC-----DBUtils(QueryRunner)-----JdbcTemplate-----xxx;(不用的)
称为工具;

1)麻烦:(原生JDBC)

2)sql语句是硬编码在程序中的;耦合(数据库层的和Java编码部分耦合)
2)、Hibernate-数据库交互的框架(ORM框架:)(使用各种框架)----》全自动框架
ORM(Object Relation Mapping) 对象关系映射

创建好JavaBean;
---》
@Table(“t_employee”)
class Employee{
private Integer empId;
private String empName;
}
session.get("1",Employee.class);
缺点:
1)、定制sql;
2)、HQL;SQL;
3)、全映射框架;部分字段映射很难,能做;
希望:最好有一个框架能支持定制化sql,而且还功能强大;sql也不要硬编码在java文件中(导致维护修改起来比较麻烦)
1)、MyBatis将重要的步骤抽取出来可以人工定制,其他步骤自动化;
2)、重要步骤都是卸载配置文件中(好维护);
3)、完全解决数据库的优化问题;
4)、MyBatis底层就是对原生JDBC的一个简单的封装;
5)、既将java编码与sql抽取了出来,还不会失去自动化功能;-----》半自动的持久化层框架