Mybatis入门教程
Mybatis大纲教程
前言
整理下资料汇总加上个人理解,只是为了能帮助到入门的程序员和以后自己的回复观看,少走弯路。
官网永远是最好的老师:Mybatis官网
一、JDBC编程分析
具体的介绍参考之前的文章:Mysql数据库与JDBC编程
1.1 关键词
- 首先,我们需要明白一个道理,Java程序都是通过JDBC(Java Data Base Connectivity)连接数据库的。
- JDBC只是定义的接口规范,具体的实现是交由各个数据库厂商去实现的
1.2 局限性分析
前言:此处假设已经引入数据库连接池,不再考虑频繁的释放资源影响系统性能
- Sql语句在代码中硬编码,分别是数据库部分的硬编码和SQL执行部分的硬编码,导致代码不易维护,不利于实际的开发,例如prepareStatement对象需要向占有位符号传参数,修改sql还需要修改代码。
- 对结果集解析存在硬编码,查询列名,sql变化导致解析代码变化,如果能将数据库对象封装成pojo解析较为方便。
- 对于JDBC编程产生的异常需要捕捉并正确关闭资源,当应用复杂时,会更加麻烦。
二、ORM模型
ORM:Object Relational Mapping,数据库的表和POJO对象的映射关系模型
主要解决:通过映射关系,将数据库表中的数据转换为POJO对象。
2.1 Hibernate(全自动,不够灵活)
2.2 Mybatis(半自动)
半自动:需要手工匹配POJO与SQL的映射关系
三、POJO、VO、DTO、JavaBean关系
POJO(Plain Object Java Object):数据传输对象,不涉及逻辑操作
VO(View Object):视图对象
DTO(Data Transfer Object):数据传输对象
JavaBean:可重用组件,POJO是JavaBean一种,具体参考工厂模式注入Bean对象