mybatis和Hibernate的区别_mybatis和hibernate的区别图-程序员宅基地

技术标签: sql类  

1.什么是Hibernate

Hibernate是关系型映射框架(ORM),程序员只要定义好实体到数据库的映射关系,即可通过Hibernate提供的方法完成持久层的操作,不需要对sql熟练掌握,Hibernate会根据存储逻辑,自动生成对应的sql,并调用jdbc接口加以执行

2.什么是Mybatis

Mybatis是持久层框架,侧重于实体和sql之间的映射关系,通过映射配置文件,将sql所需得参数,以及返回得结果字段映射到指定得实体

3.不同点

高级查询
Mybatis:手动编写sql以及resultmap
Hibernate:有良好得映射机制,无需关心sql的生成与结果映射

SQL优化
Mybatis:sql是自己手动编写,按需查询指定字段
Hibernate:会将表中所有的字段都查询出来,消耗性能

扩展性方面
Mybatis:sql语句依赖所配置的数据库,不同数据库类型支持不好
Hibernate:与具体数据库的关联只要在XML中配置文件即可,所有的HQL语句与使用的数据库无关,移植性好

版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://blog.csdn.net/ljljlj1993/article/details/105687973

智能推荐

管理计算机的内置账户权限,电脑出现问题管理员没有账户权限,解决权限问题...-程序员宅基地

文章浏览阅读1.2k次。在使用电脑的时候突然电脑的管理员没有管理账户权限了,我们应该怎么样解决管理没有账号权限问题。1、按住键盘,Windows+R,Windows键就是有是个方块的图形按键,Alt旁边。按下之后,在里头输入:secpol.msc,如图所示:2、输入完毕,回车(确认),来到“本地安全策略编辑器”如图所示,然后,按照图片上的,依次打开:安全设置>本地策略>安全选项>用户帐户控制:用于内置管..._c# 管理员权限 不显示用户账户控制

面向对象技术-程序员宅基地

文章浏览阅读2k次。定义面向对象:Coad和Yourdon给出了一个定义:“面向对象=对象+类+继承+通信”如果一个软件系统是使用这样4个概念设计和实现的,则我们认为这个软件系统时面向对象的。对象:是面向对象开发模式的基本成分。每个对象可用它本身的一组属性和它可以执行的一组操作来定义。属性一般只能通过执行对象的操作来改变。操作又称为方法或服务,它描述了对象执行的功能,若通过消息传递,还可以为其..._对象技术

第六章:定制数据对象-程序员宅基地

文章浏览阅读106次。第5章最后一个程序输出的正是这个教练想要的结果,但是还有一个缺陷:从这个输出无法判断是哪个选手的数据Kelly认为他有办法,他已经向各个数据增加是标识数据cat sarch2.txtSarah Sweeney,2002-6-17,2:58,2.58,2:39,2-25,2-55,2:54,2.18,2:55,2:55第一个是选手名字,第二个是选手出生日期,需要..._def sanitize(time_string):

Redis六种内存淘汰策略_以下哪个不是redix内存淘汰算法-程序员宅基地

文章浏览阅读428次。翻译:Redis在满内存情况下会选择何种方式删除数据,你可以选择以下5种方式(其实是6种,redis备注写错了):noeviction(默认策略):就是当内存满了,再执行set之类的要申请内存的动作,直接报错。allkeys-lru:所有key都使用LRU(最近最少使用)算法进行淘汰,优先移除最近很少使用的key,回收内存。volatile-lru:所有设置了过期时间的key使用LRU算法进行淘汰。针对设置了过期时间的键值对,直接回收最近没使用的。allkeys-random:随._以下哪个不是redix内存淘汰算法

jpa-实体类自动生成数据库表格失败_jpa could not determine type at table:-程序员宅基地

文章浏览阅读509次。今天设计完实体类在生成数据库时遇到了错误。_jpa could not determine type at table:

一起来学 SpringBoot 2.x | 第三篇:SpringBoot 日志配置-程序员宅基地

文章浏览阅读3.6k次。摘要: 原创出处 http://blog.battcn.com/2018/04/23/springboot/v2-config-logs/ 「唐亚峰」欢迎转载,保留摘要,谢谢!日志格式日志输出颜色编码编码对照表文件保存自定义日志配置Logback扩展配置springProfilespringProperty总结说点什么SpringBoot 是为了简化 Spring 应用的创建、运行、调试、部署等一...

随便推点

VS 2008 显示代码行数/改变程序格式风格_vs2008显示行数-程序员宅基地

文章浏览阅读3.9k次。VS 2008 显示代码行数:开发环境C#,其他类同操作。工具-》选项-》文本编辑器-》C#里的显示“行号”勾上即可。-------------------------------------------------------------------------------------------------------改变VS程序风格:java风格: private v_vs2008显示行数

坚持和忍耐_结构设计工程师wht什么意思-程序员宅基地

文章浏览阅读518次。坚持和忍耐在开发项目中,不可能是一帆风顺的,总会有这个问题,那个问题出现。有时候问题很好解决,有时候问题非常不好解决。上面有项目经理在跟踪这个项目,小问题项目经理可能不太会说什么,但是大问题,你就要面对很大的压力。功能是你写的,无论如何都不能推卸责任。要勇敢承担责任的勇气,和承担压力的忍耐力。任何人面对压力都想有一个方法能逃避过去。但是只有逃避是不会成长的,要学习在压力中成长,不要逃避,要_结构设计工程师wht什么意思

WarGames-Natas(16)_natas数据库入门-程序员宅基地

文章浏览阅读490次。natas(16)<?$key = "";if(array_key_exists("needle", $_REQUEST)) { $key = $_REQUEST["needle"];}if($key != "") { if(preg_match('/[;|&`\'"]/',$key)) { print "Input contains an illegal cha_natas数据库入门</div>

【Python】类的属性和方法的参数加不加self的区别_类中能不能不是self的属性-程序员宅基地

文章浏览阅读7.4k次。先看一段代码class Test(object): ID = 1 def __init__(self): pass def prtID(self): print(self.ID) def classplusOne(self): Test.ID += 1 def ObjplusOne(_类中能不能不是self的属性

Marching squares (triangle)_marching squares生成三角形-程序员宅基地

文章浏览阅读807次。2*2网格划分为三角网def get_triangle_bit(v1, v2, v3): return v1 << 2 | v2 << 1 | v3def get_triangle_shift(bitval): if bitval == 0 or bitval == 7: return (0,None,None,None,None) if bitval == 1 or bitva_marching squares生成三角形

先安装SQL2008 R2后安装AD导致无法正常登陆数据库(无法启动MSSQLSERVER)_sql2008提示ad-程序员宅基地

文章浏览阅读4k次。原文来源:http://hi.baidu.com/nansheng2/item/ce2d041f4a6340f965eabfb0 分析原因:安装AD后,系统改为使用域用户登陆,原先安装SQL时设置的“本地用户”信息已经修改,当前(域)用户没有权限访问MSSQLSERVER实例文件夹或整个SQL文件夹。解决方法:1、打开“服务”,找到SQL Server(MSSQLSERV_sql2008提示ad