文档库 最新最全的文档下载
当前位置:文档库 › servlet笔试题

servlet笔试题

servlet笔试题
servlet笔试题

Servlet笔试题

一、选择题(20题,40分, 多选题选不全或选错都不得分。)

1.销毁一个session对象,应当调用下面哪一个方法()

A. session.invalidate()

B. session.expunge()

C. session.destroy()

D. session.end()

2.以下哪个说法是正确的?(多选)( )

A. 每个Http请求对应一个单独的ActionServlet实例

B. 对于每个请求访问HelloAction的Http请求,struts框架只创建一个单独的HelloAction实例

C. 每个子应用对应一个单独的RequestProcessor实例

D. 每个子应用对应一个单独的web.xml文件

3.在J2EE中,Servlet从实例化到消亡是一个生命周期。下列描述不正确的是()。

A. 在典型的Servlet生命周期模型中,每次Web请求就会创建一个Servlet实例,请求结束Servlet就消亡了

B. init()方法是容器调用的Servlet实例的第一个方法

C. 在包容器把请求传送给Servlet之后,和在调用Servlet实例的doGet或者doPost

方法之前,包容器不会调用Servlet实例的其他方法

D. 在Servlet实例消亡之前,包容器调用Servlet实例的destroy()方法

4. 编写Servlet 的doPost方法时,需要抛出异常为()。

A. ServletException,IOException

B. ServletException,RemoteException

C. HttpServletException,IOException

D. HttpServletException,RemoteException

5. 在Servlet里,能实现重定向的两个方法是()。

A. 运用javax.servlet.http.HttpServletRequest接口的sendRedirect方法

B. 运用javax.servlet.http.HttpServletResponse接口的sendRedirect方法

C. 运用javax.servlet.RequestDispatcher接口的forward方法

D. 运用javax.servlet.ResponseDispatcher接口的forward方法

6. HTTP协议的全称是()。

A. Hyper Transport Text Protocol

B. Hyper text Transport Protocol

C. Hyper Transfer Text Protocol

D. Hyper text Transfer Protocol

7. MVC设计模式包含模型层、视图层和控制器层,在下列组件中扮演控制器角色的是()。

B. JSP

C. JavaBean

D. HTML

8. 在javax.servlet.http.*API中,HttpServlet的()方法用来处理客户端的请求。

A. Init()

B. doPost()

C. doGet()

D. destroy()

9. 在JavaEE中,HttpServletRequest对象是由()创建的。

A. 由Servlet容器负责创建,对于每个HTTP请求,Servlet容器都会创建一个HttpServletRequest对象

B. 由JavaWeb应用的Servlet或JSP组件负责创建,当Servlet或JSP组件响应HTTP请求时,先创建HttpServletRequest对象

C. 由程序员通过编码形式创建,以传递请求数据

D. 以上都不对

10. HttpServlet中,用来处理GET请求的方法是。( )

A. doHead

B. doGet

D. doPut

11. 下面哪一个标记与Servlet的配置无关( )

A. servlet-mapping

B. servlet-class

C. url-pattern

D. Tag

12. 用于调用存储过程的对象是。( )

A. ResultSet

B. DriverManager

C. CallableStatemet

D. PreparedStatement

13. 在Servlet处理请求的方式为。( )

A. 以进程的方式

B. 以程序的方式

C. 以线程的方式

D. 以响应的方式

14. 从以下哪一个选项中可以获得Servlet的初始化参数。( )

B. ServletContext

C. ServletConfig

D. GenericServlet

15. 在J2EE中,对于在Servlet如何获得会话,描述正确的是()。(选择两项)

A. HttpServletRequest类的getSession方法有两个:带参数的getSession方法和不带参数的getSession方法

B. 在servlet中,可以使用HttpSession session =new HttpSession()创建session 对象

C. 如果HttpServletRequest类的getSession方法的参数为false,表示如果没有与当前的请求相联系的会话对象时,该方法返回null

D. 如果HttpServletRequest类的getSession方法的参数为true,表示如果没有与当前的请求相联系的会话对象时,该方法返回null

16. 在J2EE中,对于HttpServlet类的描述,不正确的是( ).

A. 我们自己编写的Servlet继承了HttpServlet类,一般只需覆盖doPost或者doGet方法,不必覆盖sevrvice( )方法.因为一个sevrvice( )方法是空的

B. HttpServlet类扩展了GenericServlet类,实现了GenericServlet类的抽象方法sevrvice( )

C. HttpServlet类有两个sevrvice( )方法

D. 我们自己编写的Servlet继承了HttpServlet类,一般只需覆盖doPost或者

doGet方法,不必覆盖sevrvice( )方法.因为一个sevrvice( )方法会调用doPost或者doGet方法

17. 对于自己编写的Servlet1,以下对Servlet1的定义正确的是:( )

A. class Servlet1 implements javax.servlet.Servlet

B. class Servlet1 extends javax.servlet.GenericServlet

C. class Servlet1 extends javax.servlet.http.HttpServlet

D. class Servlet1 extends javax.servlet.ServletRequest

18. 使用哪个方法,可以查看到用户在浏览html文件时选择的所有值。( )

A. getParameterValues方法

B. getParameter方法

C. getQueryString方法

D. getAttribute方法

19. 在Java Web应用程序中,给定某Servlet程序的代码如下所示:

public class Servlet1 extends HttpServlet{

public void doGet(HttpServletRequest request,HttpServletResponse response) throws ServletException,IOException{

System.out.printIn(“get”);

}

public void doPost(HttpServletRequest request,Http ServletResponse response) throws ServletException,IOException{

System.out.printIn(“post”);

doGet(request,response);

}}

用户在浏览器地址栏中键入正确的请求URL并回车后,在控制台上显示的结果是()。

A. get

B. post

C. get post

D.post get

20. 在Java Web应用程序中,包含两个名为Servlet1和Servlet2的HttpServlet,在web.xml中指定Servlet2的访问路径为“/Servlet2”,Servlet1的doGet方法中的代码为:

PrintWriter out = response.getWriter();

out.print (“Servlet”);

RequestDispatcher dispatcher = request.getRequestDispatcher(“/servlet2”); dispatcher.forward(request,response);

out.close();

Servlet2的doGet方法中的代码为:

PrintWriter out = response.getWriter();

out.print(“Servlet2”);

out.close();

如果用户在浏览器中访问Servlet1,则浏览器将()。

A. 显示“Servlet1”

B. 显示“Servlet2”

C. 显示“Servlet1 Servlet2”

D. 什么也不显示

二、填空题(30分)

1.如何实现servlet 的单线程模式?

2.页面间对象传递的方法为:、、

3. 编写Servlet通常需要实现的两个方法是:、

4. Class.forName的作用是:

5.两种跳转方式分别是:和

6.对提交到同一个servlet类的多个业务请求,共享(填1或多)个servlet 对象。

三、问答题(30分)

1.说一说Servlet的生命周期

2. Servlet的基本架构

3. JAVA SERVLET API中forward() 与redirect()的区别?

Servlet3.0 新特性

一、概述 Servlet 是Java EE 规范体系的重要组成部分,也是Java 开发人员必须具备的基础技能,Servlet 3.0 引入的若干重要新特性,包括异步处理、新增的注解支持、可插性支持等,为读者顺利向新版本过渡扫清障碍。 Tomcat 支持servlet版本 Servlet版本Tomcat版本Jdk最小版本JA V A EE版本 Servlet 2.5 Tomcat 6 1.5 Java EE5 Servlet 3.0 Tomcat7 1.6 Java EE6 servlet3.0 的新特性包括如下方面 : 1.异步处理支持:有了该特性,Servlet 线程不再需要一直阻塞,直到业务处理 完毕才能再输出响应,最后才结束该Servlet 线程。在接收到请求之后,Servlet 线程可以将耗时的操作委派给另一个线程来完成,自己在不生成响应的情况下返回至容器。针对业务处理较耗时的情况,这将大大减少服务器资源的占用,并且提高并发处理速度。 2.新增的注解支持:该版本新增了若干注解,用于简化Servlet、过滤器(Filter) 和监听器(Listener)的声明,这使得web.xml 部署描述文件从该版本开始不再是必选的了。 3.可插性支持:开发者可以通过插件的方式很方便的扩充已有Web 应用的功 能,而不需要修改原有的应用。 二、异步处理支持 异步处理特性可以应用于Servlet 和过滤器两种组件,由于异步处理的工作模式和普通工作模式在实现上有着本质的区别,因此默认情况下,Servlet 和过滤器并没有开启异步处理特性。 异步处理关键是在于将复杂业务处理另外开一个线程,而Servlet将执行好的业务先送往jsp输出,等到耗时业务做完后再送往JSP页面,即先显示一部分,好事业务处理完后再显示一部分。 1.对于使用传统的部署描述文件(web.xml) 配置Servlet 和过滤器的情况, Servlet 3.0 为 标签增加了 子标

Servlet方法中的常用五大方法

Servlet方法中的常用五大方法 Servlet方法有很多,但是本篇向你介绍的五大Servlet方法是功能非常强大的,在Web 开发中作用不小。是不是很感兴趣呢? 这五大Servlet方法都是功能比较强大的。相信对于WEB设计来说有一定的帮助。不要一个一个方法的试验,等看完所有的内容,然后一起运用这些方法并结合以前的workshop 来做个小程序。 ◆parseTextMessage()方法 在这个例子里:定义了一个数据接受类。parseTextMessage()方法接受了一组从表单传送过来的对象以及他们的值。我们在做一些产品开发的时候,比如自定义表单,往往不知道传送过来有多少对象,对于这样的问题,程序是无法知道的,用了这个方法后,就可以报所有的对象一下子都拿到了。下面看一下这个例子: 1private void parseTextMessage(HttpServletRequest request){ 2 3Enumeration names;//列举client传送过来的所有的对象 4String name;/ 5String[]value;// 6//接受所有的对象 7names=request.getParameterNames(); 8 9while(names.hasMoreElements()){ 10//得到对象名称 11name=(String)names.nextElement(); 12//根据对象名称重新找到对象的值 13value=request.getParameterValues(name); 14//把对象名称和值放到一个类中,这个类的代码在前面的练习中有 15put(name,value); 16} 17 18//获取一个page的ID,为什么要设置page id,在java规则中有 19pageID=getPostPageID(); 20 21//获取事务id,如果有事务的话

Jsp和Servlet试题带(答案)

Web应用开发(Java高级软件开发)工程师培训班 JSP和Servlet考试试卷 姓名:分数: 第一部分:笔试部分。 二、简答题(共5题,每题8分,共40分) 1、JSP有哪些内置对象?作用分别是什么? 2、Servlet在什么情况下调用doGet()?什么情况下调用doPost()? 3、简述PreparedStatement和Statement的区别与联系? 4、在Jcbc编程时为什么要养成经常释放连接的习惯? 5、Connection、PreparedStatement、Statement、CallableStatement、ResultSet是JDBC 编程常用的接口,请分别简述它们的作用? 第二部分:上机部分。(共60分) 1、使用JSP+Servlet+数据库的方式完成一个简易的库存商品管理系统,请自己设计数据库(1)、需求描述: ①、管理员登录 ②、列出所有库存商品的名称、规格、库存件数、单价 ③、可以对库存记录做增加、修改和删除。 (2)、页面功能设计参考

点“新加商品”按钮,跳到下页进行新加商品 删除前需要用户确认 在每行的修改链接中,链接到本行记录的修改页面 说明: 商品增加(修改)成功后,页面回到管理员查看库存页,并刷新列表数据; 所有字段均为必填项,件数、单价为数字项,提交数据之前,应进行充分的检查; 保存记录的时候,程序检测如果该件商品已有记录(即:名称、规格、单价都相同的商品),则在原有库存上累加,否则新加记录;

第一部分:笔试部分 一、简答题 1、JSP有哪些内置对象?作用分别是什么? jsp9个常用的内置对象如下 request对象:客户端的请求信息被封装在request对象中,通过它才能了解到客户的需求,然后做出响应。它是HttpServletRequest类的实例。 response对象:response对象包含了响应客户请求的有关信息,但在JSP中很少直接用到它。它是HttpServletResponse类的实例。 session对象:session对象指的是客户端与服务器的一次会话,从客户连到服务器的一个WebApplication开始,直到客户端与服务器断开连接为止。它是HttpSession 类的实例。 out对象:out对象是JspWriter类的实例,是向客户端输出内容常用的对象 page对象:page对象就是指向当前JSP页面本身,有点象类中的this指针,它是https://www.wendangku.net/doc/e28617632.html,ng.Object类的实例。 application对象:application对象实现了用户间数据的共享,可存放全局变量。 它开始于服务器的启动,直到服务器的关闭,在此期间,此对象将一直存在;这样 在用户的前后连接或不同用户之间的连接中,可以对此对象的同一属性进行操作; 在任何地方对此对象属性的操作,都将影响到其他用户对此的访问。服务器的启动 和关闭决定了application对象的生命。它是ServletContext类的实例。 exception对象:exception对象是一个例外对象,当一个页面在运行过程中发生了例外,就产生这个对象。如果一个JSP页面要应用此对象,就必须把isErrorPage 设为true,否则无法编译。他实际上是https://www.wendangku.net/doc/e28617632.html,ng.Throwable的对象。 pageContext对象:pageContext对象提供了对JSP页面内所有的对象及名字空间的

Java EE复习题选择题(有答案)

第一章 1、以下描述哪些方面与JA VA EE无关:(B) A、事务处理 B、Applet C、资源管理 D、分布式 第三章 1、Servlet程序的入口点是:(A ) A、init() B、main() C、service() D、doGet() 2、你的servlet类需要使用com.abc.Jsjx类,Jsjx.class文件应该放到以下哪个目录中?(D) A、WEB-INF/classes B、WEB-INF/lib/jar C、WEB-INF/jars D、WEB-INF/classes/com/abc 3、在WEB应用程序的目录结构中,在WEB-INF文件夹中的lib目录是放(C)文件的。 A、.jsp文件 B、.class文件 C、.jar文件 D、web.xml文件 4、下列哪一个XML标签表示某一个servlet的类(A)。 A、st.jsjx.class B、st.jsjx.class C、st.jsjx.class D、st.jsjx.class 5、看下列HTML标签: Hello World 点击超级链接后下列哪一个servlet方法将被调用:(A) A、doGet B、doPost C、Get D、Post 6、关于FORM表单提交的HTTP的GET方法不正确的是(C) A、不能向服务器提交二进制数据 B、不能向服务器提交无限长度的数据 C、不能向服务器提交多值参数 D、参数附在URL后面 7、servlet 的生命周期又一系列事件组成,把这些事件按照先后顺序排序,以下正确的是(B ) A、加载类,实例化,请求处理,初始化,销毁 B、加载类,实例化,初始化,请求处理,销毁 C、实例化,加载类,初始化,请求处理,销毁 D、加载类,初始化,实例化,请求处理,销毁 8、在JA V A EE中,给定某Servlet的代码如下,编译运行该文件,以下陈述正确的是(B)。 Public class Servlet1 extends HttpServlet{ Public void init() throws ServletException{ } Public void service(HttpServletRequest request,HttpServletResponse response) Throws ServletException,IOException{ PrintWriter out = response.getWriter(); Out.println(“hello!”); } } A、编译该文件时会提示缺少doGet()或者dopost()方法,编译不能够成功通过

java试题

第8章Servlet 技术 一、选择题: (1)下列关于Servlet的功能描述正确的是。 A)Servlet可以创建并返回一个包含基于客户请求性质的动态内容的完整的HTML页面B)Servlet可以创建可嵌入到现有HTML页面中的一部分HTML页面 C)Servlet可以与其它服务器资源(包括数据库和基于Java的应用程序)进行通信 D)Servlet可以用多个客户端处理连接,接收多个客户端的输入,并将结果广播到多个客户端上。 E)Servlet对特殊的处理采用MIME类型过滤数据,例如图像转换或者Word文档转换ABCDE (2)下列关于Servlet技术的特点说法正确的是。 A)可移植性好 B)功能强大 C)安全, 简洁, 和服务器紧密集成 D)高效耐用 E)Java语言能实现的功能,Servlet基本都能实现 ABDE (3)Servlet的生命周期包括下列哪几个阶段。 A)装载Servlet B)创建一个Servlet实例 C)调用init()方法 D)激活Service()方法,并传递请求和响应对象 E)调用destroy()方法来销毁Servlet BCDE (4)下列对HttpServlet类描述错误的是。 A)HttpServlet类是针对使用Http协议的Web服务器的Servlet类 B)HttpServlet类通过执行Servlet借口,能够提供Http协议的功能 C)HttpServlet的子类实现了doGet()方法去响应HTTP的Get请求 D)HttpServlet的子类实现了doPost()方法去响应HTTP的Post请求 E)HttpServlet类通过init()方法和destory()方法管理Servlet自身的资源 E (5)下列对于web.xml的配置说法错误的是。 A)在web.xml描述中,首先要声明Servlet B)在web.xml描述中,要指定这个Servlet的名字 C)在web.xml描述中,要指定这个Servlet的类 D)在web.xml描述中,要为Servlet做URI映射 E)在web.xml中不可同时指定多个Servlet E

JAVA试题_4

第8章Servlet技术 一、选择题: (1)下列关于Servlet的功能描述正确的是。 A)Servlet可以创建并返回一个包含基于客户请求性质的动态内容的完整的HTML页面B)Servlet可以创建可嵌入到现有HTML页面中的一部分HTML页面 C)Servlet可以与其它服务器资源(包括数据库和基于Java的应用程序)进行通信 D)Servlet可以用多个客户端处理连接,接收多个客户端的输入,并将结果广播到多个客户端上。 E)Servlet对特殊的处理采用MIME类型过滤数据,例如图像转换或者Word文档转换ABCDE (2)下列关于Servlet技术的特点说法正确的是。 A)可移植性好 B)功能强大 C)安全,简洁,和服务器紧密集成 D)高效耐用 E)Java语言能实现的功能,Servlet基本都能实现 ABDE (3)Servlet的生命周期包括下列哪几个阶段。 A)装载Servlet B)创建一个Servlet实例 C)调用init()方法 D)激活Service()方法,并传递请求和响应对象 E)调用destroy()方法来销毁Servlet BCDE (4)下列对HttpServlet类描述错误的是。 A)HttpServlet类是针对使用Http协议的Web服务器的Servlet类 B)HttpServlet类通过执行Servlet借口,能够提供Http协议的功能 C)HttpServlet的子类实现了doGet()方法去响应HTTP的Get请求 D)HttpServlet的子类实现了doPost()方法去响应HTTP的Post请求 E)HttpServlet类通过init()方法和destory()方法管理Servlet自身的资源 E (5)下列对于web.xml的配置说法错误的是。 A)在web.xml描述中,首先要声明Servlet B)在web.xml描述中,要指定这个Servlet的名字 C)在web.xml描述中,要指定这个Servlet的类 D)在web.xml描述中,要为Servlet做URI映射 E)在web.xml中不可同时指定多个Servlet E

Servlet3.0新规范

简介: Servlet 是Java EE 规范体系的重要组成部分,也是Java 开发人员必须具备的基础技能,Servlet 3.0 是Servlet 规范的最新版本。本文主要介绍了Servlet 3.0 引入的若干重要新特性,包括异步处理、新增的注解支持、可插性支持等等,为读者顺利向新版本过渡扫清障碍。 Servlet 3.0 新特性概述 Servlet 3.0 作为Java EE 6 规范体系中一员,随着Java EE 6 规范一起发布。该版本在前一版本(Servlet 2.5)的基础上提供了若干新特性用于简化Web 应用的开发和部署。其中有几项特性的引入让开发者感到非常兴奋,同时也获得了Java 社区的一片赞誉之声: 1. 异步处理支持:有了该特性,Servlet 线程不再需要一直阻塞,直到业务处理完毕才能再输出响应, 最后才结束该Servlet 线程。在接收到请求之后,Servlet 线程可以将耗时的操作委派给另一个 线程来完成,自己在不生成响应的情况下返回至容器。针对业务处理较耗时的情况,这将大大减少服务器资源的占用,并且提高并发处理速度。 2. 新增的注解支持:该版本新增了若干注解,用于简化Servlet、过滤器(Filter)和监听器(Listener) 的声明,这使得web.xml 部署描述文件从该版本开始不再是必选的了。 3. 可插性支持:熟悉Struts2 的开发者一定会对其通过插件的方式与包括Spring 在内的各种常用 框架的整合特性记忆犹新。将相应的插件封装成JAR 包并放在类路径下,Struts2 运行时便能自动加载这些插件。现在Servlet 3.0 提供了类似的特性,开发者可以通过插件的方式很方便的扩 充已有Web 应用的功能,而不需要修改原有的应用。 下面我们将逐一讲解这些新特性,通过下面的学习,读者将能够明晰了解Servlet 3.0 的变化,并能够顺利使用它进行日常的开发工作。 回页首异步处理支持 Servlet 3.0 之前,一个普通Servlet 的主要工作流程大致如下:首先,Servlet 接收到请求之后,可能需要对请求携带的数据进行一些预处理;接着,调用业务接口的某些方法,以完成业务处理;最后,根据处理的结果提交响应,Servlet 线程结束。其中第二步的业务处理通常是最耗时的,这主要体现在数据库操作,以及其它的跨网络调用等,在此过程中,Servlet 线程一直处于阻塞状态,直到业务方法执行完毕。在处理业务的过程中,Servlet 资源一直被占用而得不到释放,对于并发较大的应用,这有可能造成性能的瓶颈。对此,在以前通常是采用私有解决方案来提前结束Servlet 线程,并及时释放资源。 Servlet 3.0 针对这个问题做了开创性的工作,现在通过使用Servlet 3.0 的异步处理支持,之前的Servlet 处理流程可以调整为如下的过程:首先,Servlet 接收到请求之后,可能首先需要对请求携带的数据进行一些预处理;接着,Servlet 线程将请求转交给一个异步线程来执行业务处理,线程本身返回至容器,此时Servlet 还没有生成响应数据,异步线程处理完业务以后,可以直接生成响应数据(异步线程拥有ServletRequest 和ServletResponse 对象的引用),或者将请求继续转发给其它Servlet。如此一来,Servlet 线程不再是一直处于阻塞状态以等待业务逻辑的处理,而是启动异步线程之后可以立即返回。 异步处理特性可以应用于Servlet 和过滤器两种组件,由于异步处理的工作模式和普通工作模式在实现上有着本质的区别,因此默认情况下,Servlet 和过滤器并没有开启异步处理特性,如果希望使用该特性,则必须按照如下的方式启用: 1. 对于使用传统的部署描述文件(web.xml) 配置Servlet 和过滤器的情况,Servlet 3.0 为 标签增加了 子标签,该标签的默认取值为false,要 启用异步处理支持,则将其设为true 即可。以Servlet 为例,其配置方式如下所示: DemoServlet footmark.servlet.Demo Servlet

HttpServletrequest 与HttpServletResponse总结汇总

http协议 浏览器需要URL找到服务器当中的资源,浏览器传给服务器一个请求,服务器对这个请求进行相应的处理(比如增删改查),服务器根据处理结果返回给浏览器,浏览器根据返回结果进行相应的处理(比如显示网页显示图片),那么浏览器和服务器怎么相互传输数据,数据如何解析,传输什么格式的数据需要制定好一套规则,HTTP协议就应运而生了,这是一群外国人(www)勾搭之后产生的,HTTP协议自出现以来,主要解决的就是浏览器和服务器数据交换的格式问题,所以HTTP协议定义了一套数据格式,一个http请求一般含有请求方法,请求地址,http协议版本,和header,这些header就相当于http协议提供的功能,你设置相应的header可以让服务器产生相应的行为,服务器响应中一般包含协议版本,状态码和状态码描述,和一大堆header,不同的是请求和响应所支持的header 并不一样,具体的参观相应的介绍,http与web开发的联系中有request 和response对象,使用相应的方法可以取到http请求中header内容也可以返回相应的http内容给浏览器,还有一点就是response 当中定义一大把状态码和状态描述,比如200对相应ok,404对应找不到, 由来 Web服务器收到一个http请求,会针对每个请求创建一个HttpServletRequest和HttpServletResponse对象,向客户端发送数据找HttpServletResponse,从客户端取数据找HttpServletRequest; HTTP 协议是基于请求-响应的协议,客户端请求一个文件,服务器对该请求进行响应。HTTP 使用TCP 协议,默认使用80 端口。最初的HTTP 协议版本是HTTP/0.9,后被HTTP/1.0 替代。目前使用的版本是HTTP/1.1, 在HTTP 协议中,总是由主动建立连接、发送HTTP 请求的客户端来初始化一个事务。服务器不负责连接客户端,或创建一个到客户端的回调连接(callback connection)。 HttpServletRequest 公共接口类HttpServletRequest继承自ServletRequest.客户端浏览器发出的请求被封装成为一个HttpServletRequest对象。所有的信息包括请求的地址,请求的参数,提交的数据,上传的文件客户端的ip甚至客户端操作系统都包含在其内。 一个HTTP 请求包含以下三部分: a.请求地址(URL) b.请求头(Request headers) c.实体数据(Entity body) 举例如下 POST /examples/default.jsp HTTP/1.1

java eeServlet习题

Servlet习题 一、填空题 1.在Servlet开发中,当我们要自定义一个Servlet时,可以继承(GenericServlet )或HttpServlet类。 2.在web.xml文件中,一个元素用于映射一个Servlet的对外访问路径,该路径也称为(虚拟路径) 3.在Servlet开发中,实现了多个Servlet之间数据共享的对象是( ServletContest ) 4.Servlet接口中的(init())方法载入时执行,且只执行一次,负责对Servlet进行初始化 5.HttpServlet类中的doGet和doPost方法通常抛出(ServletException )和IOException异常。 6.在RequestDispatcher接口中,实现请求转发的方法是(forward() ) 二、简答题 1.请列举Servlet接口中的方法,并分别说明这些方法的特点及作用。 Servlet接口有init、service、destroy、getServletConfig和getServletInfo这5个方 法,这些方法的特点及其作用具体如下 1、init(ServletConfig config) 方法,该方法在服务器对 Servlet 第一次访问时调用,负 责 Servlet 初始化工作。在一个 Servlet 的生命周期中只执行一次。该方法接收一 个 ServletConfig 类型的参数, Servlet 容器可以通过这个参数向 Servlet 传递初始化配 置信息。 2、service(ServletRequest request , ServletResponse response) 方法,该方法负责响 应用户的请求,当容器接收到客户端访问 Servlet 对象的请求时,就会调用此方法。 3、destroy() 方法,该方法方法负责释放 Servlet 对象占用的资源。当 Servlet 对象被 销毁时,容器会调用此方法。

2018JavaWeb复习题

一、单项选择题(每题2分,共30分) https://www.wendangku.net/doc/e28617632.html,eBean标签中scope有四中不同取值,下列哪一个scope取值是Jsp引擎为每一 个客户分配一个共享的beans。( C ) A、request B、session C、application D、page 2.核心标签库中,用来实现循环功能的标签是( D )。 A、 B、 C、 D、 3.下列关于JSTL中条件标签说法错误的是 (A )。 A、标签可以实现形如if (){…} else {…}的条件语句 B、标签用于条件选择中华考试网(www.Examw。com) C、 标签代表一个条件分支 D、 代表的最后选择。该标签同样不接受任何属性 4.以下( D )不是JSP运行所必须的条件。 A、JavaJDK B、操作系统 C、支持Jsp的Web服务器 D、数据库 5.下列( B )不是request对象的方法。 A、getSession(Boolean create) B、addHeader( String name, String value) C、isSecure() D、setAttrihute( String name, java. lang. Object o) 6.XML采用以下哪种数据组织结构?( D ) A、星状结构 B、线状结构 C、网状结构 D、树状结构 D 7.在XML中,下列关于DOM的叙述不正确的( )。 A、DOM是独立于开发语言和平台的,因此使用Visnal Basic、Java、Visual C++等开发工具使用的DOM编程API是一致的 B、XML文档通过load方法被装载进内存后,在内存中形成一个DOM文档对象模型树 C、通过DOM API,软件开发人员可以控制XML文档的结构和内容 D、通过DOM在XML文档中只能按照顺序方式导航 8.Servlet的表单处理的方法有( C )。 ①getParameter(“parameter1”); ②setContentType ③getParameterValues ④sendRedirect ⑤getParameterNames A、①④⑤ B、③④⑤ C、①③⑤ D、③④ 9.为了使用自定义标记,不需要定义的独立组件( D )。 A、定义标记功能的标记处理程序类 B、将XMI元素名称映射到标记实现的标记库描述符文件

javaweb期末复习知识点整理

1、Web应用概述 1.URL与URI URL:统一资源定位器 URI:统一资源定位符 2.常见HTML标签 3.表单的处理 4.静态文档与动态文档的概念:静态文档是一种以文件的形式存放在服务器端的 文档,客户发出对该文档的请求,服务器返回这个文档。动态文档是指文档的 内容可根据需要动态生成,又可分为服务器端动态文档和客户端动态文档技术。 5.Servlet概念:服务器端小程序,是使用ServletAPI以及相关类编写的java程序, 主要用来扩展web服务器的功能。 6.处理404错误:查看给定的路径名是否正确,查看Servlet类文件是否在classes 目录下,查看web.xml文件内容是否正确,查看tomcat是否启动 2、Servlet技术模型 1.Servlet的API:javax.servlet包,javax.servlet.http包 Servlet接口及方法: 1)public void init(ServletConfig config):完成Servlet初始化并准备提供服务。 容器传给该方法一个ServletConfig类型的参数。 2)public void service(ServletRequest req,ServletResponse res)throw ServletException,IOException:对每个客户请求容器调用一次该方法,它允许 Servlet为请求提供响应。 3)public void destroy()该方法由容器调用,指示Servlet清除本身,释放请求的资源并准备结束服务。 4)public ServletConfig getServletConfig()返回关于Servlet的配置信息,如传递给init()方法的参数。 5)public String getServletInfo()返回关于Servlet的信息,如作者,版本及版权信息。 ServleConfig接口作用及方法 HttpServlet类:新的service方法,doGet,doPost HttpServletRequest接口及常用方法 HttpServletResponse接口及常用方法 2.Servlet的开发步骤 编写一个Servlet类 编译 部署 (1)在tomcat的虚拟目录下,创建Web目录 (2)将编译好的.class文件复制到Web目录的WEB-INF\classes目录 (3)修改配置文件WEB-INF\web.xml (4)启动tomcat 运行

JSP常用内置对象

JSP常用内置对象使用说明 内置对象特点: 1.由JSP规范提供,不用编写者实例化。 2.通过Web容器实现和管理 3.所有JSP页面均可使用 4.只有在脚本元素的表达式或代码段中才可使用(<%=使用内置对象%>或<%使用内置对象%>) 常用内置对象: 1.输出输入对象:request对象、response对象、out对象 2.通信控制对象:pageContext对象、session对象、application对象3.Servlet对象:page对象、config对象 4.错误处理对象:exception对象

对象常用方法说明:1 2

3 4 5

6 7 8 它代表JSP被编译成Servlet,可以使用它来调用Servlet类中所定义的方法 9.exception对象(运行时的异常,https://www.wendangku.net/doc/e28617632.html,ng.Throwable) 被调用的错误页面的结果,只有在错误页面中才可使用, 即在页面指令中设置:<%@page isErrorPage=“true”%> Request(Javax.servlet.ServletRequest)它包含了有关浏览器请求的信息.通过该对象可以获得请求中的头信息、Cookie和请求参数。 Response(Javax.servlet.ServletResponse)作为JSP页面处理结果返回给用户的响应存储在该对象中。并提供了设置响应内容、响应头以及重定向的方法(如cookies,头信息等) Out(Javax.servlet.jsp.JspWriter)用于将内容写入JSP页面实例的输出流中,提供了几个方法使你能用于向浏览器回送输出结果。 pageContext(Javax.servlet.jsp.PageContext)描述了当前JSP页面的运行环境。可以返回JS P页面的其他隐式对象及其属性的访问,另外,它还实现将控制权从当前页面传输至其他页面的方法。 Session(javax.servlet.http.HttpSession)会话对象存储有关此会话的信息,也可以将属性赋给一个会话,每个属性都有名称和值。会话对象主要用于存储和检索属性值。 Application(javax.servle.ServletContext)存储了运行JSP页面的servlet以及在同一应用程序中的任何Web组件的上下文信息。 Page(https://www.wendangku.net/doc/e28617632.html,ng.Object)表示当前JSP页面的servlet实例 Config(javax.servlet.ServletConfig)该对象用于存取servlet实例的初始化参数。 Exception(https://www.wendangku.net/doc/e28617632.html,ng.Throwable)在某个页面抛出异常时,将转发至JSP错误页面,提供此对象是为了在JSP中处理错误。只有在错误页面中才可使用<%@page isErrorPage=“true”%>

HttpServletRequest的常用方法

request常用方法 获得客户机信息 getRequestURL方法返回客户端发出请求时的完整URL。 getRequestURI方法返回请求行中的资源名部分。 getQueryString 方法返回请求行中的参数部分。 getRemoteAddr方法返回发出请求的客户机的IP地址 getRemoteHost方法返回发出请求的客户机的完整主机名 getRemotePort方法返回客户机所使用的网络端口号 getLocalAddr方法返回WEB服务器的IP地址。 getLocalName方法返回WEB服务器的主机名 getMethod得到客户机请求方式 获得客户机请求头 getHead(name)方法 getHeaders(String name)方法 getHeaderNames方法 获得客户机请求参数(客户端提交的数据) getParameter(name):获取指定名称的参数值。这是最为常用的方法之一。 getParameterValues(String name):获取指定名称参数的所有值数组。它适用于一个参数名对应多个值的情况。如页面表单中的复选框,多选列表提交的值。 getParameterNames():返回一个包含请求消息中的所有参数名的Enumeration 对象。通过遍历这个Enumeration对象,就可以获取请求消息中所有的参数名。 getParameterMap():返回一个保存了请求消息中的所有参数名和值的Map对象。Map对象的key是字符串类型的参数名,value是这个参数所对应的Object类型的值数组

调用RequestDispatcher.forward 方法的请求转发过程结束后, 浏览器地址栏保持初始的URL地址不变。 HttpServletResponse.sendRedirect方法对浏览器的请求直接作出响应,响应的结果就是告诉浏览器去重新发出对另外一个URL的访问请求; RequestDispatcher.forward方法在服务器端内部将请求转发给另外一个资源,浏览器只知道发出了请求并得到了响应结果,并不知道在服务器程序内部发生了转发行为。 RequestDispatcher.forward方法的调用者与被调用者之间共享相同的request 对象和response对象,它们属于同一个访问请求和响应过程; 而HttpServletResponse.sendRedirect方法调用者与被调用者使用各自的request对象和response对象,它们属于两个独立的访问请求和响应过程。

Servlet习题

Servlet习题 单选题 1.以下关于HttpServlet的说法中,错误的是()。 A、HttpServlet是一个抽象类 B、HttpServlet的子类至少重写doGet或doPost方法之一 C、HttpServlet类的子类至少重写service方法 D、HttpServlet位于javax.servlet.http包中 2.在login.html中存在如下代码:

username:
当表单提交时,下列选项中,能够获取到文本框中值的是 A、request.getAttribute(“userName”); B、request.getParameter(“myName”); C、request.getParameter(“userName”); D、request.getAttribute(“myName”); 3. 在浏览器中输入http://localhost:8080/myWebApp/start/,就会调用syxy包中名为Student的 Servlet,那么在web.xml中配置正确的是 A、 /start/* itcast.Student B、 syxy.Student /start/* C、 student syxy.Student student /start/* D、 syxy.Student student syxy.Student /start/* 4.下面选项中,用于得到Servlet信息的方法是( ) A、getServletInfo() B、init() C、getServlet() D、destroy()

web复习题

一、单项选择题。 1、Tomcat服务器的默认TCP端口号是:( d ) A、80 B、21 C、7001 D、8080 2、JavaBean的生命周期中,哪个是用来跟踪用户的会话的?( a ) A、session B、request C、page D、application 3、有关C/S、B/S结构下列说法错误的是:( d ) A、:在C/S结构,即客户端/服务器结构中,有专门的数据库服务器,但客户端还要运行客户端应用程序,这也叫做胖客户端。 B、在B/S结构中,客户端在浏览器中只负责表示层逻辑的实现,业务逻辑和数据库都在服务器端运行。也就是说,应用程序部署在服务器端,客户端通过浏览器访问应用程序。 C、通常B/S结构中,客户端发送HTTP请求消息传给服务器,服务器将请求传递给Web 应用程序,Web应用程序处理请求,并把相应的HTML页面传给客户端。 D、Web应用是基于C/S结构的,也就是客户端/服务器结构。 4、以下从四种不同的作用域中得到Bean的实例,说法错误的是:( a ) A、page是指当前Web应用程序的所有JSP文件中取得实例,从Page对象中获取JavaBean; B、request是指在当前的用户请求中取得实例,从ServletRequest对象中获取JavaBean ;、 C、session是指在当前的用户会话中取得实例,常用于一个用户登录在网站上全过程不同请求之间共享数据,从HttpSession对象中获取JavaBean ; D、application是指在当前的应用程序中取得实例,常用于同一个应用程序不同用户访问时共享数据,从ServletContext对象中获取JavaBean 。 5、J2EE架构中各层的组件分布说明错误的是?( b ) A、Application Client是客户层中包含的组件 B、Applets是Web层中包含的组件 C、JSP,Servlet是Web层中包含的组件 D、Enterprise JavaBean放置在业务层。 6、J2EE组件和MVC架构的对应理解错误的是:( d ) A、J2EE在Web容器中的Servlet提供了业务流程控制,实现了MVC中的Controller。 B、Bean实现了业务逻辑,也就是Model。 C、J2EE在客户层中的Applet 以及Web层中的JSP实现了面向浏览器的数据表现,是View部分。 D、Application Client实现了面向桌面应用的数据逻辑。这是MVC架构中的Model部分。 7、关于get和post两种请求,下列说法正确的是?( a ) A、post请求是默认的。

JavaWeb期末考试题必过宝典

JAVAWEB

JavaWeb考试题 1、说出Servlet 的生命周期,并说出Servlet 和CGI 的区别? 【基础】 答:Web 容器加载Servlet 并将其实例化后,Servlet 生命周期开始,容器运行其init 方法进行Servlet 的初始化,请求到达时运行其service 方法,service 方法自动派遣运行与请求对应的doXXX 方法(doGet,doPost)等,当服务器决 定将实例销毁的时候调用其destroy 方法。与cgi 的区别在于servlet 处于服务 器进程中,它通过多线程方式运行其service 方法,一个实例可以服务于多个请求,并且其实例一般不会销毁,而CGI 对每个请求都产生新的进程,服务完成后 就销毁,所以效率上低于servlet。 2、Servlet 的基本架构。【基础】 答:public class ServletName extends HttpServlet { public void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { } public void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { } } 4、JSP 中动态INCLUDE 与静态INCLUDE 的区别?【基础】 答:动态INCLUDE 用jsp:include 动作实现它总是会检查所含文件中的变化,适合用于包含动态页面,并 且可以带参数;静态INCLUDE 用include 伪码实现,它不会检查所含文件的变化, 适用于包含静态页面<%@ include file="included.htm" %> 6、JSP 的内置对象及方法?【基础】 答:request 表示HttpServletRequest 对象。它包含了有关浏览器请求的信息, 并且提供了几个用于获取cookie, header 和session 数据的有用的方法。 response 表示HttpServletResponse 对象,并提供了几个用于设置送回浏 览器的响应的方法(如cookies,头信息等)。 out 对象是javax.jsp.JspWriter 的一个实例,并提供了几个方法使你能用 于向浏览器回送输出结果。 pageContext 表示一个javax.servlet.jsp.PageContext 对象。它是用于方 便存取各种范围的名字空间、servlet 相关的对象的API,并且包装了通用的 servlet 相关功能的方法。 session 表示一个请求的javax.servlet.http.HttpSession 对象。Session 可以存贮用户的状态信息。 application 表示一个javax.servle.ServletContext 对象。这有助于查找 有关servlet 引擎和servlet 环境的信息。 config 表示一个javax.servlet.ServletConfig 对象。该对象用于存取 servlet 实例的初始化参数。 page 表示从该页面产生的一个servlet 实例。 7、JSP 的常用指令?【基础】 答:<%@page language=”java” contenType=”text/html;charset=gb2312”session=”true” buffer=”64kb” autoFlush=”true” isThreadSafe=”true”info=”text” errorPage=”error.jsp” isErrorPage=”true” isELIgnored=”true” pageEncoding=”gb2312” import=”java.sql.*”%>

相关文档