博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Hibernate与mybatis比较
阅读量:6228 次
发布时间:2019-06-21

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

Hibernate与mybatis比较

1、先说底层:

  a)Jdbc:全称java数据库连接,是java语言用来规范客户端如何访问数据库的程序接口。

  b) 一般步骤:

i.加载驱动程序    ii.获得数据库连接诶    iii.创建Statement或者PrepareStatement对象,实现增删改查复制代码

2、为了减少编写jdbc编写工作,提出了orm模型:hibernate和mybatis

  a)Hibernate是全表映射框架。

i.优点:对jdbc封装较好,有hql可以自动生成sql语句。    ii. 缺点:对多表关联 复杂查询支持较差,不支持存储过程,不能满足开发者优化sql语句的愿望复制代码

  b) Mybat是半自动映射框架

i.缺点:手动编写sql语句,以及映射关系,工作量大    ii.优点:有动态sql机制,可以优化sql语句,支持存储过程复制代码

Hibernate缓存机制

1、why:hibernate是持久层框架,经常访问物理数据库。为了较少对数据库的访问,提高数据库访问性能,加入了hibernate缓存机制。

2、what:hibernate包括一级缓存和二级缓存。

  a)一级缓存:又叫session的缓存,是事物范围的缓存,默认开启;

  b)二级缓存:又叫sessionfactory的缓存,默认关闭。二级缓存存放数据一般是不经常修改的数据,不会被并发访问的数据,常量数据;

  c)访问数据顺序是:一级缓存——》二级缓存——》数据库。

转载于:https://juejin.im/post/5c1c46fae51d4510871eea84

你可能感兴趣的文章
bash编程 将一个目录里所有文件存为一个array 并分割为三等分——利用bash array切片...
查看>>
自己动手开发IOC容器
查看>>
hdparm
查看>>
[LeetCode] Best Time to Buy and Sell Stock
查看>>
《Flask Web开发——基于Python的Web应用开发实践》一字一句上机实践(上)
查看>>
C++11学习
查看>>
【java】java工具类StringUtils,org.apache.commons.lang3.StringUtils
查看>>
WPF太阳、地球、月球运动轨迹模拟
查看>>
Getting Started with Scala
查看>>
curl != casperjs ? - Google Groups
查看>>
Oracle从字符串资源中得到想要的数据分析
查看>>
敏捷开发中的Code Review
查看>>
事务 commit
查看>>
{右键我的电脑无法打开计算机管理}解决方法
查看>>
如何获取和发送Http请求和相应
查看>>
【HeadFirst 设计模式学习笔记】4 工厂模式
查看>>
CentOS6.4 安装mysql cmake的参数说明
查看>>
创新型政府网站群建设
查看>>
sql server 中将由逗号“,”分割的一个字符串,转换为一个表,并应用与 in 条件...
查看>>
notepad++下载Subversion插件,显示intalltion of subversion failed
查看>>