javaWeb面试题含答案.doc
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- javaWeb 试题 答案
- 资源描述:
-
javaWeb面试题含答案 资料仅供参考 1、jsp和servlet的区别、共同点、各自应用的范围?? JSP是Servlet技术的扩展,本质上就是Servlet的简易方式。JSP编译后是“类servlet”。Servlet和JSP最主要的不同点在于,Servlet的应用逻辑是在Java文件中,而且完全从表示层中的HTML里分离开来。而JSP的情况是Java和HTML能够组合成一个扩展名为.jsp的文件。JSP侧重于视图,Servlet主要用于控制逻辑。在struts框架中,JSP位于MVC设计模式的视图层,而Servlet位于控制层. 2、cookie和session的作用、区别、应用范围,session的工作原理??? Cookie:主要用在保存客户端,其值在客户端与服务端之间传送,不安全,存储的数据量有限。 Session:保存在服务端,每一个session在服务端有一个sessionID作一个标识。存储的数据量大,安全性高。占用服务端的内存资源。 3、jstl是什么?优点有哪些?? JSTL(JSP Standard Tag Library ,JSP标准标签库)是一个不断完善的开放源代码的JSP标签库,由四个定制标记库(core、format、xml 和 sql)和一对通用标记库验证器(ScriptFreeTLV 和 PermittedTaglibsTLV)组成。优点有: 1、 在应用程序服务器之间提供了一致的接口,最大程序地提高了WEB应用在各应用服务器之间的移植。 2、 简化了JSP和WEB应用程序的开发。 3、 以一种统一的方式减少了JSP中的scriptlet代码数量,能够达到没有任何scriptlet代码的程序。在我们公司的项目中是不允许有任何的scriptlet代码出现在JSP中。 4、 允许JSP设计工具与WEB应用程序开发的进一步集成。相信不久就会有支持JSTL的IDE开发工具出现。 4、j2ee的优越性主要表现在哪些方面?MVC模式 a、 J2EE基于JAVA 技术,与平台无关 b、 J2EE拥有开放标准,许多大型公司实现了对该规范支持的应用服务器。如BEA ,IBM,ORACLE等。 c、 J2EE提供相当专业的通用软件服务。 d、 J2EE提供了一个优秀的企业级应用程序框架,对快速高质量的开发系统打下了基础。 Model模型:应用程序的主体部分,用于表示业务逻辑。 View视图:应用程序中用户界面相关的部分,是用户看到并与之交互的界面。 Controller控制器:用于根据用户的输入,控制用户界面数据显示,更新Model对象状态。 MVC模式的出现不但实现了功能模块和显示模块的分离,同时还提够了应用系统的可维护、可扩展性、可移植性、和组建的可复用性。 5、Struts的优点 a、实现MVC模式,结构清晰,使开发者只需关注业务逻辑的实现。 b、有丰富的tag能够用,能大大提够开发效率,缩短开发时间。 c、页面导航。经过一个配置文件,即可把握整个系统各部分之间的联系,这对于后期的维护有很大的好处 d、提供Exception处理机制 e、支持L18N 6、为什么要用struts? JSP、Servlet、JavaBean技术的出现给我们构建强大的企业应用系统提供了可能。但用这些技术构建的系统非常的繁乱,因此在此之上,我们需要一个规则、一个把这些技术组织起来的规则,这就是框架,Struts便应运而生。 基于Struts开发的应用由3类组件构成:控制器组件、模型组件、视图组件 7、Sturt1的核心类、核心标签库? ActionServlet 控制器、ActionMapping状态改变事件 、 Action控制器的一部分、ActionForward用户指向、ActionForm状态改变的数据 Html标签、bean标签、logic标签、tiles标签、nested标签 8、struts1与sturts2的区别(struts2是struts1和webwork的结合体) 1、struts1要求Action类继承一个抽象基类,而不是接口。 struts2的action类能够实现一个action接口,也能够实现其它接口。 2、sturts1 action是单例模式,线程是安全的。 struts2 action线程是不安全的,action为每一个请求都生成了一个实例。 3、sturts1过去依赖serlet API,不容易测试。 struts2不依赖于容器,允许Action脱离容器单独被测试。 4、Struts1 使用ActionForm对象捕获输入。所有的ActionForm必须继承一个基类。 Struts 2直接使用Action属性作为输入属性,消除了对第二个输入对象的需求。 5、Struts1 整合了JSTL,因此使用JSTL EL。这种EL有基本对象图遍历,可是对集合和索引属性的支持很弱。 Struts2能够使用JSTL,可是也支持一个更强大和灵活的表示式语言--"Object Graph Notation Language" (OGNL). 6、Struts 1使用标准JSP机制把对象绑定到页面中来访问。 Struts 2 使用 "ValueStack"技术,使taglib能够访问值而不需要把你的页面(view)和对象绑定起来。 7、Struts 1 ActionForm 属性一般都是String类型。Struts1使用Commons-Beanutils进行类型转换。 Struts2 使用OGNL进行类型转换。提供基本和常见对象的转换器。 8、Struts 1支持在ActionForm的validate方法中手动校验,或者经过Commons Validator的扩展来校验。 Struts2支持经过validate方法和XWork校验框架来进行校验。 9、Struts1支持每一个模块有单独的Request Processors(生命周期),可是模块中的所有Action必须共享相同的生命周期。 Struts2支持经过拦截器堆栈(Interceptor Stacks)为每一个Action创立不同的生命周期。堆栈能够根据需要和不同的Action一起使用。 9、过滤器和拦截器的区别 1、拦截器是基于java的反射机制的,而过滤器是基于函数回调 2、过滤器依赖于servlet容器,而拦截器不依赖于servlet容器 3、拦截器只能对action请求起作用,而过滤器则能够对几乎所有的请求起作用 4、拦截器能够访问action上下文、值栈里的对象,而过滤器不能 5、在action的生命周期中,拦截器能够多次被调用,而过滤器只在容器初始化时调用一次 拦截器 :是在面向切面编程的就是在你的service或者一个方法,前调用一个方法,或者在方法后调用一个方法比如动态代理就是拦截器的简单实现,在你调用方法前打印出字符串(或者做其它业务逻辑的操作),也能够在你调用方法后打印出字符串,甚至在你抛出异常的时候做业务逻辑的操作。 过滤器:是在java web中,你传入的request,response提前过滤掉一些信息,或者提前设置一些参数,然后再传入servlet或者struts的 action进行业务逻辑,比如过滤掉非法url(不是login.do的地址请求,如果用户没有登陆都过滤掉),或者在传入servlet或者 struts的action前统一设置字符集,或者去除掉一些非法字符. 10、Hibernate是一个开放源代码的对象关系映射框架,它对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、咨信平台为文档C2C交易模式,即用户上传的文档直接被用户下载,收益归上传人(含作者)所有;本站仅是提供信息存储空间和展示预览,仅对用户上传内容的表现方式做保护处理,对上载内容不做任何修改或编辑。所展示的作品文档包括内容和图片全部来源于网络用户和作者上传投稿,我们不确定上传用户享有完全著作权,根据《信息网络传播权保护条例》,如果侵犯了您的版权、权益或隐私,请联系我们,核实后会尽快下架及时删除,并可随时和客服了解处理情况,尊重保护知识产权我们共同努力。
2、文档的总页数、文档格式和文档大小以系统显示为准(内容中显示的页数不一定正确),网站客服只以系统显示的页数、文件格式、文档大小作为仲裁依据,个别因单元格分列造成显示页码不一将协商解决,平台无法对文档的真实性、完整性、权威性、准确性、专业性及其观点立场做任何保证或承诺,下载前须认真查看,确认无误后再购买,务必慎重购买;若有违法违纪将进行移交司法处理,若涉侵权平台将进行基本处罚并下架。
3、本站所有内容均由用户上传,付费前请自行鉴别,如您付费,意味着您已接受本站规则且自行承担风险,本站不进行额外附加服务,虚拟产品一经售出概不退款(未进行购买下载可退充值款),文档一经付费(服务费)、不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
4、如你看到网页展示的文档有www.zixin.com.cn水印,是因预览和防盗链等技术需要对页面进行转换压缩成图而已,我们并不对上传的文档进行任何编辑或修改,文档下载后都不会有水印标识(原文档上传前个别存留的除外),下载后原文更清晰;试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓;PPT和DOC文档可被视为“模板”,允许上传人保留章节、目录结构的情况下删减部份的内容;PDF文档不管是原文档转换或图片扫描而得,本站不作要求视为允许,下载前可先查看【教您几个在下载文档中可以更好的避免被坑】。
5、本文档所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用;网站提供的党政主题相关内容(国旗、国徽、党徽--等)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。
6、文档遇到问题,请及时联系平台进行协调解决,联系【微信客服】、【QQ客服】,若有其他问题请点击或扫码反馈【服务填表】;文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“【版权申诉】”,意见反馈和侵权处理邮箱:1219186828@qq.com;也可以拔打客服电话:0574-28810668;投诉电话:18658249818。




javaWeb面试题含答案.doc



实名认证













自信AI助手
















微信客服
客服QQ
发送邮件
意见反馈



链接地址:https://www.zixin.com.cn/doc/6199048.html