博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
MyBatis框架
阅读量:6225 次
发布时间:2019-06-21

本文共 1991 字,大约阅读时间需要 6 分钟。

ORM框架

应用程序中的POJO对象数据库表相互映射的框架称为对象关系映射框架(Object Relational Mapping),Hibernate与Mybatis都可以称为ORM框架

只是Hibernate的设计理念是完全面向POJO的(全映射框架),而MyBatis则不是(半映射框架)

Hibernate

1.Hibernate在需要存储过程与复杂SQL时,映射关系使用不上,需要自己用代码处理,没办法完全的掌控数据库的SQL

2.优化SQL是高并发,高响应系统中必然的要求,这种不能完全掌控SQL的持久层框架只适用与企业管理系统,不适用与电商类应用

3.映射规则可以通过XML以及注解实现,类似如下:

1 
2 5
6 7
8
12
13
14
15
16
17 18
22
23
26
27
28
29
30
View Code

4.Hibernate会根据映射关系来生成对应的SQL,通过操作POJO来操作数据库中的表

MyBatis

相对于Hibernate而言,持久层框架MyBatis需要编写SQL,而且也提供映射规则,它的动态SQL自动映射接口编程等功能使它简单易用

本身支持SQL优化,使它满足高并发场景的应用条件,当下最为流行

1.优势在于灵活,提供了接口编程(数据库访问层DAO层是不需要实现类的,只提供一个接口即可)

2.MyBatis提供自动映射,动态SQL,级联,缓存,注解,代码和SQL分离等特性

3.MyBatis映射规则可以通过XML以及注解实现,类似如下:

1 
2 5
6
7
12
13
16
17
18 insert into user (username,password,type) values (#{username},#{password},#{type})19
20
21
22 delete from user where id=#{id}23
24
25
29
30
31 update user set username=#{username},password=#{password}32 where id=#{id}33
34
View Code

4.MyBatis需要提供接口以及对应SQL的XML文件,自定义SQL意味着工作量增加,但是这也是它优于Hibernate的地方,

   自定义SQL意味着可以SQL调优,提高系统性能

转载于:https://www.cnblogs.com/LJing21/p/10508229.html

你可能感兴趣的文章
Apache Flink fault tolerance源码剖析(五)
查看>>
HTAP数据库 PostgreSQL 场景与性能测试之 18 - (OLAP) 用户画像圈人场景 - 数组包含查询与聚合...
查看>>
GitHub最新命令使用教程
查看>>
web中间件切换(was切tomcat)
查看>>
onvif规范的实现:server端Discovery实现,通过OnvifTestTool12.06测试
查看>>
Hadoop: MapReduce2多个job串行处理
查看>>
2017阿里双11交易创建峰值 32.5 万笔/秒!
查看>>
【译】统一样式语言
查看>>
十分钟教程:用Keras实现seq2seq学习
查看>>
Netflix: 使用 React 构建高性能的电视用户界面
查看>>
在网站 Logo 上右击时提示下载网站的 Logo 素材下载
查看>>
移动端设计最佳实践
查看>>
运营商如何从NaaS中获益
查看>>
大数据计数原理1+0=1这你都不会算(一)
查看>>
艾普联手OPENSTACK 打造公众云
查看>>
从线上卖到线下,秘籍在这里|千牛头条双11直播
查看>>
李飞飞:为什么计算机视觉对机器人如此重要?
查看>>
数据的价值 删除无用数据可降低风险
查看>>
2017年五大关键云趋势:容器、AI等
查看>>
JedisPool资源池优化
查看>>