对象框架笔试题-csdn

csdn是什么  时间:2021-04-27  阅读:()

Hibernate工作原理及为什么要用

原理

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的性能非常好 因为它是个轻量级框架。映射的灵活性很出色。它支持各种关系数据库从一对一到多对多的各种复杂关系。

2 Hibernate是如何延迟加载?

1. Hibernate2延迟加载实现 a)实体对象b)集合(Col lection)

2. Hibernate3提供了属性的延迟加载功能

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

3 Hibernate中怎样实现类之间的关系?(如一对多、多对多的关系 )

类与类之间的关系主要体现在表与表之间的关系进行操作 它们都市对对象进行操作 我们程序中把所有的表与类都映射在一起它们通过配置文件中的 many-to-one、 one-to-many、many-to-many、

4 说下Hibernate的缓存机制

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

2.二级缓存a)应用及缓存b)分布式缓存

条件数据不会被第三方修改、数据大小在可接受范围、数据更新频率低、同一数据被系统频繁使用、非关键数据c)第三方缓存的实现

5 Hibernate的查询方式

Sql 、 Criteria,object comptosition

Hql 

1 、 属性查询

2、 参数查询、命名参数查询

3、 关联查询

4、 分页查询

5、 统计函数

6 如何优化Hibernate 

1 .使用双向一对多关联不使用单向一对多

2.灵活使用单向一对多关联

3.不用一对一用多对一取代

4.配置对象缓存不使用集合缓存

5•—对多集合使用 Bag,多对多集合使用Set

6.继承类使用显式多态

7.表字段要少表关联不要怕多有二级缓存撑腰

7 Struts工作机制为什么要使用 Struts

工作机制

Struts的工作流程:

在web应用启动时就会加载初始化ActionServlet,ActionServlet从struts-config.xml文件中读取配置信息,把它们存放到各种配置对象当Action Servlet接收到一个客户请求时 ,将执行如下流程.-(1)检索和用户请求匹配的 ActionMapping实例,如果不存在,就返回请求路径无效信息 ;-(2)如果ActionForm实例不存在,就创建一个ActionForm对象,把客户提交的表单数据保存到ActionForm对象中;

-(3)根据配置信息决定是否需要表单验证 .如果需要验证,就调用ActionForm的val idate()方法;

-(4)如果ActionForm的val idate()方法返回nul l或返回一个不包含ActionMessage的ActuibErrors对象,就表示表单验证成功;

-(5)ActionServlet根据Actio nMapp i ng所包含的映射信息决定将请求转发给哪个Actio n,如果相应的Actio n实例不存在 就先创建这个实例 然后调用Actio n的exec ute。方法

-(6)Action的exec ute()方法返回一个Actio nF orward对象,Action Servlet在把客户请求转发给Actio nForward对象指向的JS P组件

-(7)ActionForward对象指向JS P组件生成动态网页返回给客户

为什么要用

JSP、 Servlet、 JavaBean技术的出现给我们构建强大的企业应用系统提供了可能。但用这些

技术构建的系统非常的繁乱 所以在此之上 我们需要一个规则、 一个把这些技术组织起来的规则这就是框架 Struts便应运而生。

基于Struts开发的应用由3类组件构成控制器组件、模型组件、视图组件

8 Struts的val idate框架是如何验证的

在struts配置文件中配置具体的错误提示再在FormBean中的val idate()方法具体调用。

9 说下Struts的设计模式

MVC模式:web应用程序启动时就会加载并初始化ActionServler 。用户提交表单时 一个配置好的ActionForm对象被创建 并被填入表单相应的数据 ActionServler根据Struts-config.xml文件配置好的设置决定是否需要表单验证如果需要就调用ActionForm的

Val id ate()验证后选择将请求发送到哪个 Actio n如果Actio n不存在 Actio nServlet会先创建这个对象然后调用 Actio n的execute()方法。 Execute()从ActionForm对象中获

取数据完成业务逻辑返回一个Act io n Fo rwa rd对象 Act io n Se rvlet再把客户请求转发给Actio nForward对象指定的jsp组件 Action Forward对象指定的jsp生成动态的网页返回给客户。

10 spring工作机制及为什么要用?

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

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

3. DispatcherServlet请请求提交到目标Control ler

4. Control ler进行业务逻辑处理后会返回一个ModelAndView

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

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

为什么用

{AO P让开发人员可以创建非行为性的关注点 称为横切关注点 并将它们插入到应用程序代码中。使用AO P后公共服务(比如日志、持久性、事务等)就可以分解成方面并应用到域对象上 同时不会增加域对象的对象模型的复杂性。

IOC允许创建一个可以构造对象的应用环境 然后向这些对象传递它们的协作对象。 正如单词倒置所表明的 IOC就像反过来的JNDI 。没有使用一堆抽象工厂、服务定位器、单元素(singleton)和直接构造(straight construction)每一个对象都是用其协作对象构造的。因此是由容器管理协作对象(col laborator ) 。

Spring即使一个AOP框架也是一IOC容器。 Spring最好的地方是它有助于您替换对象。有了Spring,只要用JavaBean属性和配置文件加入依赖性(协作对象) 。然后可以很容易地在需要时替换具有类似接口的协作对象。

Sharktech:美国/荷兰独立服务器,10Gbps端口/不限流量/免费DDoS防护60G,319美元/月起

sharktech怎么样?sharktech (鲨鱼机房)是一家成立于 2003 年的知名美国老牌主机商,又称鲨鱼机房或者SK 机房,一直主打高防系列产品,提供独立服务器租用业务和 VPS 主机,自营机房在美国洛杉矶、丹佛、芝加哥和荷兰阿姆斯特丹,所有产品均提供 DDoS 防护。此文只整理他们家10Gbps专用服务器,此外该系列所有服务器都受到高达 60Gbps(可升级到 100Gbps)的保护。...

RackNerd:美国便宜VPS,洛杉矶DC-02/纽约/芝加哥机房,4TB月流量套餐16.55美元/年

racknerd怎么样?racknerd美国便宜vps又开启促销模式了,机房优秀,有洛杉矶DC-02、纽约、芝加哥机房可选,最低配置4TB月流量套餐16.55美元/年,此外商家之前推出的最便宜的9.49美元/年套餐也补货上架,同时RackNerd美国AMD VPS套餐最低才14.18美元/年,是全网最便宜的AMD VPS套餐!RackNerd主要经营美国圣何塞、洛杉矶、达拉斯、芝加哥、亚特兰大、新...

RAKsmart裸机云/云服务器/VPS全场7折,独立服务器限量秒杀$30/月起

适逢中国农历新年,RAKsmart也发布了2月促销活动,裸机云、云服务器、VPS主机全场7折优惠,新用户注册送10美元,独立服务器每天限量秒杀最低30.62美元/月起,美国洛杉矶/圣何塞、日本、香港站群服务器大量补货,1-10Gbps大带宽、高IO等特色服务器抄底价格,机器可选大陆优化、国际BGP、精品网及CN2等线路,感兴趣的朋友可以持续关注下。裸机云新品7折,秒杀产品5台/天优惠码:Bare-...

csdn是什么为你推荐
考试chromeloadedios支持ipad模块iphonenetbios端口26917 8000 4001 netbios-ns 端口 是干什么的windows键是哪个Win键是什么?360chrome360Chrome 世界之窗极速浏览器 ChromePlus迅雷快鸟迅雷快鸟支持移动宽带提速吗micromediamacromedia的中文名google分析google analysis干什么用的?
合租服务器 免费域名跳转 老域名全部失效请记好新域名 krypt lnmp 香港主机 l5520 美国便宜货网站 tk域名 申请个人网页 java空间 cdn加速是什么 国外视频网站有哪些 空间租赁 下载速度测试 石家庄服务器托管 lamp兄弟连 阵亡将士纪念日 宿迁服务器 97rb 更多