JSP编程技术习题集及实训 下载本文

C)表单提交调用 D)jsp:forward调用

二、判断题

1.Servelt是使用Java Servlet API所定义的相关类和方法的Java程序,它运行在启用Java的Web服务器或应用服务器端,用于扩展该服务器的能力。(对) 2.当用户请求一个Servlet时,服务器都会创建Servlet实例响应,响应用户请求。(错) 3.Servlet功能强大,体系结构先进,但它在表示层的实现上存在一些缺陷。(对) 4.JSP技术是在Servlet之后产生的,它以Servlet为核心技术,是Servlet技术的一个成功应用。(对)

5.一般用JSP来实现页面,用Servlet来处理业务逻辑。(对)

6.当多个客户请求一个Servlet时,服务器为每一个客户启动一个进程而不是启动一个线程。(错)

7.用户开发一个Servlet时,必须直接或间接实现Servlet接口所定义的方法。(对)

8.Servlet的部署文件是一个xml文件,文件名为web.xml,它保存在Web服务目录的WEB-INF子目录中。(对)

9.HttpSession API是一个基于Cookie或者URL重写机制的高级会话管理接口。如果浏览器支持Cookie则使用Cookie,如果不支持Cookie则自动采用URL重写。(对)

10.在Servlet中读取HTTP头信息非常容易,只需调用HttpServletRequest的getHeader等方法即可。(对)

11.Servlet和applet分别在处于服务器和客户机两端。(对) 12.Servlet与普通Java应用程序一样,要有main方法。(错) 13.对于每一个Servlet实例,只能被初始化一次(对)。 14.doGet()和doPost()方法分别处理客户端GET和POST方法发送的请求。(对) 15.不能给一个Servlet映射多个访问路径。(错)

三、填空题

1.用户可以有多种方式请求Servlet,如 浏览器直接调用 , 页面form中提交调用 、 超级连接调用 、 Servlet调用 等。 2.javax.servlet.Servlet接口定义了三个用于Servlet生命周期的方法,它们是init() 、service() 、 destroy() 方法。 3.一般编写一个Servlet就是编写一个 HttpServlet 的子类,该类实现响应用户的 POST 、 GET 、 PUT 等请求的方法,这些方法是 doPost 、doGet 和 doPut 等doXXX方法。 4.使用cookie的基本步骤为:创建cookie对象, 传送cookie对象 , 读取cookie对象 ,设置cookie对象的有效时间。 5.Servlet中使用Session对象的步骤为:调用 HttpServletRequest.getSession() 得到Session对象,查看Session对象,在会话中保存数据。 6.Servlet运行于__服务器___端,与处于客户端的___Applet____相对应。

7.当Server关闭时,__Servlet___就被销毁。

8.使用Servlet处理表单提交时,两个最重要的方法是_Post__和__Get__。 9.Serlvet接口只定义了一个服务方法就是_Service()_。 四、思考题

1.试述Servlet的生命周期。

2.如何使Servlet既能处理GET请求,又能处理POST请求? 3.获取表单数据的基本方法有哪些? 4.HttpServletResponse接口有哪些用处?

5.Servlet处理表单提交比起JSP页面处理表单提交有哪些优点?

6.是否一定要重写Service方法?重写了Servlet的doPost和doGet方法如何被调用?

7.Servlet对象如何获取用户的会话对象? 8.Servlet如何与Servlet或者JSP进行通信? 9.如何编写、编译、调试和配置Servlet?

第九章 基于Servlet的MVC模式

一、选择题

1.关于MVC架构的缺点,下列的叙述哪一项是不正确的?(B) A)提高了对开发人员的要求 B)代码复用率低 C)增加了文件管理的难度 D)产生较多的文件

2.关于JSP Model1模式的缺点,下列的叙述哪一项是不正确的?(D) A)应用是基于过程的 B)业务逻辑和表示逻辑混合 C)软件维护和扩展困难 D)产生较多的文件

3.关于JSP Model2模式的优点,下列的叙述哪一项是不正确的?(D) A)模型具有较高的通用性 B)Servlet对象擅长控制

C)分离了视图层和业务层 D)M、V、C之间具有较低的耦合性 4.阅读下面代码片段:

JavaBeanClass bean=new JavaBeanClass(parameter); HttpSession session=request.getSession(true); session.setAttribute(\

该段代码创建的Bean,下列叙述哪项是正确的?(C) A)Request 周期的Bean B)Application 周期的Bean C)Session D)Page周期的Bean 5.阅读下面代码片段:

JavaBeanClass bean=new JavaBeanClass(parameter); getServletContext().setAttribute(\或者 application.setAttribute(\

该段代码创建的Bean,下列叙述哪项是正确的?(B) A)Request 周期的Bean B)Application 周期的Bean C)Session D)Page周期的Bean 6.阅读下面代码片段:

JavaBeanClass bean=new JavaBeanClass(parameter); request.setAttribute(\

该段代码创建的Bean,下列叙述哪项是正确的?(A) A)Request 周期的Bean B)Application 周期的Bean C)Session D)Page周期的Bean 7.阅读下面代码片段:

RequestDispatcher dispatcher=request.getRequestDispatcher(\dispatcher.forward(request,response);

关于该段代码的作用,下列叙述哪项是正确的?(B) A)页面重定向到a.jsp页面 B)将请求转发到a.jsp页面 C)从a.jsp定向到当前页面 D)从a.jsp转发到当前页面

二、判断题

1.重定向功能是将用户从当前页面或Servlet定向到另一个JSP页面或Servlet。(对)

2.转发的功能是将用户对当前JSP页面或Servlet的请求转发给另一个JSP页面或Servlet。(对)

2.重定向仅仅是将用户定向到其他的JSP页面或Servlet,而不能将Request对象转发给所指向的资源。(对)

3.网站设计的时候经常会处理大量的数据,这些数据必须都放在JSP页面中。(错)

4.实现转发需要两个步骤,首先在Servlet中要得到RequestDispatcher对象,然后在调用该对象的forward方法实现转发。( 对 )

5.在MVC模式中,因为Servlet负责创建JavaBean,所以JavaBean的构造函数可以带有参数,除了保留get和set规则外,还可以有其他功能的函数。(对) 6.在MVC模式的Web开发中,“视图”、“模型”和“控制器”分别对应着“JSP页面”、“JavaBean”和“Serlvet”,以Servlet为核心。(对)

三、填空题

1.MVC(Model-View-Controller)是八十年代为编程语言 Smalltalk-80 发明的一种软件设计模式。

2.MVC是三层开发结构,这三个字母按顺序分别代表_Model__、___View_、__Controller_______。 3. 模型 封装了数据和对数据的操作,是实际进行数据处理计算的地方。 视图 是应用和用户之间的接口,它负责将应用显现给用户和显示模型的状态。控制器 负责视图和模型之间的交互,控制对用户输入的响应、响应方式和流程。 4.控制器主要负责两方面的动作: 把用户的请求分发到相应的模型 ; 将模型的改变及时反映到视图上 。 5.Sun公司的JSP规范提出了两种用JSP技术建立应用程序的方式,分别称为JSP Model 1(模式1)和JSP Model 2(模式2)。

6.在Servlet中,主要使用HttpServletResponse类的重定向方法 sendRedirect 方法实现重定向,以及使用RequestDispatcher类的转发方法 forward 方法实现转发功能。

四、思考题

1.MVC模式的核心思想是什么?

2.谁来担当MVC模式的视图、模型和控制器角色? 3.使用MVC模式有什么好处?

4.MVC模式中的Bean由谁来创建?都有那些生命周期类型? 5.控制器如何控制页面的流转。

6.怎样编写、编译、调试和布置MVC模式中的Servlet和bean? 7.请简要叙述如何设计JSP网站。