Hibernate面试题
一.谈一谈Hibernate的缓存机制
1.一级缓存:
内部缓存存在于HIbernate中又叫一级缓存,他属于应用事务级缓存。
2.二级缓存:
01.应用级缓存。
02.分布式缓存。
条件:数据不会被第三方修改,数据大小在可接受范围,数据更新频率低,同一数据库被系统频繁使用,非关键数据。
3.第三方缓存的实现。
二.Hibernate与JDBC的联系
HIbernate是JDBC的轻量级封装,包括JDBC与数据库的连接(用Hibernate.property的配置文件实现,其实本质上是封装了JDBC的forname),和查询 ,删除等代码,都用面向对象的思想用代码联系起来,Hibernate通过hbm配置文件把po类的字段和数据库的字段关联起来比如数据库的ID。在面向对象中就对应的就是:
private Login id; public Long getId(); public setId(Long id);
然后hql语句也是面向对象的,它的查询语句不是查询数据库而是查询类的,这些实现都是通过xml文件,其实到最后Hibernate=封装的jdbc+xml文件。
三.Hibernate自带的分页机制是什么?如果不使用Hibernate自带的分页,则采用什么方式分页?
1.Hibernate自带的分页机制:获得Session对象后,从Session中获取Query对象。用Query.setFirstResult();设置要显示的第一行数据,
Query.setMaxResult();设置要显示的最后以上数据。
2.不使用Hibernate自带的分页,可采用了sql语句分页:
eg:每页显示两条记录,查询第五页数据:
select * top 5 from table where tabId not in(select tabId top(2-1)*5 from table);
Hibernate面试题的更多相关文章
- Hibernate面试题收藏
hibenate的面试总结. 可能现在大家常常还会遇到一个些面试的时候问一些关于hibernate的问题,我个人觉得,这些东西一般做过开发的人在使用上没有任何的问题的,但是如果是要你来说就不一定能够说 ...
- Hibernate考试试题(部分题库)含答案
Hibernate考试试题 (题库) 1. 在Hibernate中,下列说法正确的有( ABC ).[选三项] A.Hibernate是一个开放源代码的对象关系映射框架 B.Hibernate对JD ...
- Hibernate面试题(七)--load与get区别
1. load方式是延迟加载,只有属性被访问的时候才会调用sql语句 get方式是非延迟加载,无论后面的代码是否会访问到属性,马上执行sql语句 2. 都通过id=500去获取对象1. get方式会返 ...
- Java面试题:Hibernate的二级缓存与Hibernate多表查询
我们来看两个有关Java框架之Hibernate的面试题,这是关于Hibernate的常考知识点. 1.请介绍一下Hibernate的二级缓存 解题按照以下思路来回答: (1)首先说清楚什么是缓存: ...
- SSH面试题收藏
Hibernate工作原理及为什么要用? 原理: 1. 读取并解析配置文件2. 读取并解析映射信息,创建SessionFactory3. 打开Sesssion4. 创建事务Transation5. 持 ...
- java web面试题,收集
java面试题: http://www.codeceo.com/article/java-interview-question.html(很多题都很废) http://www.php100.com/h ...
- Java框架 面试题总结
一. Struts1.x 4 1. struts1优缺点,为什么要使用struts1 4 2. Struts1核心组件 4 3. Strust1请求处理流程 工作原理 4 4. Struts1线程安 ...
- 精心收集的SSH框架的面试题汇总
Hibernate工作原理及为什么要用? 原理: 1. 读取并解析配置文件 2. 读取并解析映射信息,创建SessionFactory 3. 打开Sesssion 4. 创建事务Transation ...
- Java初中级程序员面试题宝典
Java基础部分 &与&&区别? &和&&都是逻辑运算符,都是判断两边同时真则为真,否则为假:但是&&当第一个条件不成之后,后面的条件都 ...
随机推荐
- 怎样查看MySQL是否区分大小写
MySQL默认情况下是否区分大小写,使用show Variables like '%table_names'查看lower_case_table_names的值,0代表区分,1代表不区分.
- python regrex
Python正则表达式指南 The source from the website http://www.cnblogs.com/huxi/archive/2010/07/04/1771073.htm ...
- SaltStack之Job管理和Runner(八)
SaltStack之Job管理和Runner 配置文件/etc/salt/master cachedir: /var/cache/salt/master # cache路径 keep_jobs: 24 ...
- easyUI validate函数【总结篇-部分转】
以下是自己总结和修改别人的帖子和资源整理出来的一些常用验证函数,备用,交流. <body>邮箱验证:<input type="text" validtype=&q ...
- UIButton 的属性与方法
UIButton *btn=[UIButtonbuttonWithType:UIButtonTypeCustom];//一般都是设置为该类型 btn.frame=CGRectMake(100, 80, ...
- ubuntu下vim输入中文和中文显示
安装和配置VIM,参考 http://jingyan.baidu.com/album/046a7b3efd165bf9c27fa915.html?picindex=4 在home/你的用户名 这个 ...
- PNG类库
libpng depends on Zlib http://www.libpng.org/pub/png/libpng.html LodePNG http://lodev.org/lodepng/ P ...
- ecshop去掉“云服务中心”或者是“模板堂知识库”
ECSHOP开发中心(www.68ecshop.com)教程介绍一下如何去除后台云服务中心菜单: 打开admin/templates/menu.htm,把415行的 document.getEleme ...
- yourphp的edit,updata,dele
参考文件Yourphp\Lib\Action\User\PostAction.class.php public function add() { $form=new Form(); $form-> ...
- -[UIWindow viewForFirstBaselineLayout]: unrecognized selector sent to instance
#ifdef DEBUG #import <UIKit/UIKit.h> #import <objc/runtime.h> @implementation UIView (Fi ...