设为首页 加入收藏

TOP

Java Web面试题集(一)
2014-11-24 02:07:10 来源: 作者: 【 】 浏览:98
Tags:Java Web 试题集

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是 一个开放源代码的对

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

评论

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