MyBatis 简介
编辑教程MyBatis 简介
MyBatis 是支持定制化 SQL、存储过程以及高级映射的优秀的持久层框架。
MyBatis 避免了几乎所有的 JDBC 代码和手动设置参数以及获取结果集。
MyBatis 可以对配置和原生Map使用简单的 XML 或注解,
将接口和 Java 的 POJOs(Plain Old Java Objects,普通的 Java对象)映射成数据库中的记录。
安装
要使用 MyBatis, 只需将 mybatis-x.x.x.jar 文件置于 classpath 中即可。
如果使用 Maven 来构建项目,则需将下面的 dependency 代码置于 pom.xml 文件中:
<dependency> <groupId>org.mybatis</groupId>
<artifactId>mybatis</artifactId> <version>x.x.x</version></dependency>
MyBatis的功能架构:
我们把Mybatis的功能架构分为三层:
API接口层 | 提供给外部使用的接口API,开发人员通过这些本地API来操纵数据库。 接口层一接收到调用请求就会调用数据处理层来完成具体的数据处理。 |
---|---|
数据处理层 | 负责具体的SQL查找、SQL解析、SQL执行和执行结果映射处理等。 它主要的目的是根据调用的请求完成一次数据库操作。 |
基础支撑层 | 负责最基础的功能支撑,包括连接管理、事务管理、配置加载和缓存处理, 这些都是共用的东西,将他们抽取出来作为最基础的组件。为上层的数据处理层提供最基础的支撑。 |
MyBatis的优缺点
优点:
简单易学:本身就很小且简单。 没有任何第三方依赖,最简单安装只要两个jar文件+配置几个sql映射文件易于学习, 易于使用,通过文档和源代码,可以比较完全的掌握它的设计思路和实现。 |
|
---|---|
灵活:mybatis不会对应用程序或者数据库的现有设计强加任何影响。 sql写在xml里,便于统一管理和优化。 通过sql基本上可以实现我们不使用数据访问框架可以实现的所有功能,或许更多。 |
|
解除sql与程序代码的耦合: 通过提供DAL层,将业务逻辑和数据访问逻辑分离, 使系统的设计更清晰,更易维护,更易单元测试。sql和代码的分离,提高了可维护性。 |
|
提供映射标签,支持对象与数据库的orm字段关系映射 | |
提供对象关系映射标签,支持对象关系组建维护 | |
提供xml标签,支持编写动态sql。 |
缺点:
编写SQL语句时工作量很大,尤其是字段多、关联表多时,更是如此。 | |
---|---|
SQL语句依赖于数据库,导致数据库移植性差,不能更换数据库。 | |
框架还是比较简陋,功能尚有缺失,虽然简化了数据绑定代码, 但是整个底层数据库查询实际还是要自己写的,工作量也比较大, 而且不太容易适应快速数据库修改。 |
|
二级缓存机制不佳 |
Mos固件,小电视必刷固件
ES6 教程
Vue.js 教程
JSON 教程
jQuery 教程
HTML 教程
HTML 5 教程
CSS 教程
CSS3 教程
JavaScript 教程
DHTML 教程
JSON在线格式化工具
JS在线运行
JSON解析格式化
jsfiddle中国国内版本
JS代码在线运行
PHP代码在线运行
Java代码在线运行
C语言代码在线运行
C++代码在线运行
Python代码在线运行
Go语言代码在线运行
C#代码在线运行
JSRUN闪电教程系统是国内最先开创的教程维护系统, 所有工程师都可以参与共同维护的闪电教程,让知识的积累变得统一完整、自成体系。
大家可以一起参与进共编,让零散的知识点帮助更多的人。
X
选择支付方式:
立即支付
¥
9.99
无法付款,请点击这里
金额: 0 元
备注:
转账时请填写正确的金额和备注信息,到账由人工处理,可能需要较长时间
备注:
转账时请填写正确的金额和备注信息,到账由人工处理,可能需要较长时间
如有疑问请联系QQ:565830900
正在生成二维码, 此过程可能需要15秒钟