设为首页 加入收藏

TOP

Java Web面试题集(二)
2014-11-24 02:07:10 来源: 作者: 【 】 浏览:97
Tags:Java Web 试题集
象关系映射框架,它对JDBC进行了非常轻量级的对象封装,使得java程 序员可以随心所欲的使用对象编程思维来操纵数据库


工作原理:


1.读 取并解析配置文件2.读取并解析映射信息,创建SessionFactory 3.打 开Sesssion 4.创建事务Transation 5.持 久化操作6.提交事务7.关闭Session 8.关 闭SesstionFactory



优点有:


1.对JDBC访 问数据库的代码做了封装,大大简化了数据访问层繁琐的重复性代码。


2. Hibernate是 一个基于JDBC的主流持久化框架,是一个优秀的ORM实现。他很大程度的简 化DAO层 的编码工作


3、 Hibernate使用Java反 射机制而不是字节码增强程序来实现透明性。


4、 Hibernate的性能好, 映射的灵活性比较出色。它支持各种关系数据库,从一对一到多对多的各种复杂关系。



11、hibernate的 核心类是什么??重要方法是什么??


Configuration、SessionFactory


Session如 下方法Save、load、Update、Delete


Query q=CreateQuery(“from Customer where customerName=:customerName”)


beginTransaction、close、Transaction、Commit()



12、session.load()和session.get()的 区别


Session.load/get方 法均可以根据指定的实体类和id从数据库读取记录,并返回与之对应的实体对象。其区别在于:


如果未能发现 符合条件的记录,get方法返回null,而load方 法会抛出一个ObjectNotFoundException。



13、hql和sql的 区别【可以这样说,hibernate是面向对象语言与关系型数据库之间的桥梁,他使得程序员可以不用关心底层数 据库连接的代码,而可以专心写业务逻辑。】


sql是 面向数据库表查询


hql是 面向对象查询的,其form子句返回的是对象的实 例。



14、hibernate与jdbc之 间的区别【可以这样说,hibernate是面向对象语言与关系型数据库之间的桥梁,他使得程序员可以不用关心底层 数据库连接的代码,而可以专心写业务逻辑。】


Hibernate作 为一个O/R Mapping,比JDBC具备的优势有:


1.编 程思想上,更加符合人的逻辑思维习惯,面向对象比面向过程更加容易理解,测试和维护


2.开 发维护速度上,Hibernate显著的快,代码量显著小


3.通 过Annotation进 行数据库的字段加密


4.对Sql不 熟的菜鸟来说可以自动调优


5.结 合Spring, 通过声明式事务可以省略事务的控制,事务以横切面形式出现



Jdbc比Hibernate具 备的优势有:


1.大 数据量访问时,Jdbc的效率显著快


2.直 接操作数据库比较灵活



15、Hibernate是 如何延迟加载?


当Hibernate在 查询数据的时候,数据并没有存在与内存中,当程序真正对数据的操作时,对象才存在与内存中,就实现了延迟加载,他节省了服务器的内存开销,从而提高了服务 器的性能。



16、 说下Hibernate的 缓存机制


1.内 部缓存存在Hibernate中又叫一级缓存,属于应用事物级缓存


2.二 级缓存:


a)应 用及缓存


b)分 布式缓存


c)第 三方缓存的实现



17、spring工 作机制及为什么要用 【spring是一个轻量的控制 反转和面向切面的容器框架】


1.springmvc把 所有的请求都提交给DispatcherServlet,它会委托应用系统的其他模块负责对请求进行真正的处理工 作。


2.DispatcherServlet查 询一个或多个HandlerMapping,找到处理请求的Controller.


3.DispatcherServlet把 请求提交到目标Controller


4.Controller进 行业务逻辑处理后,会返回一个ModelAndView


5.Dispathcher查 询一个或多个ViewResolver视图解析器,找到ModelAndView对 象指定的视图对象


6.视 图对象负责渲染返回给客户端。


IoC就 是由容器来控制业务对象之间的依赖关系。控制反转的本质,是控制权由应用代码转到了外部容器,控制器的转移既是所谓的反转。控制权的转移带来的好处就是降 低了业务对象之间的依赖程度,即实现了解耦。


DI/IOC,对持久层和表示层的控制 与分配,增加系统的灵活性和稳定性. AOP,面向切面,利用代理对程序的有效管理.


spring是 一个轻量级的IOC和AOP框架,通过spring的IOC实 现松耦合,而作为一个AOP框架他又能分离系统服务,实现内聚开发 Spring最好的地方是它有助于您替换对象。有了Spring,只要用JavaBean属 性和配置文件加入依赖性(协作对象)。然后可以很容易地在需要时替换具有类似接口的协作对象。}
Spring对 多种ORM框 架提供了很好的支持



首页 上一页 1 2 下一页 尾页 2/2/2
】【打印繁体】【投稿】【收藏】 【推荐】【举报】【评论】 【关闭】 【返回顶部
分享到: 
上一篇软件测试面试题: 测试电梯 下一篇Microsoft程序员测试题 (经典)..

评论

帐  号: 密码: (新用户注册)
验 证 码:
表  情:
内  容: