web开发技术课后答案

更新时间:2023-10-22 21:00:01 阅读量: 综合文库 文档下载

说明:文章内容仅供预览,部分内容可能不全。下载后的文档,内容与下面显示的完全一致。下载之前请确认下面内容是否您想要的,是否完整无缺。

web开发技术课后答案

【篇一:《javaweb编程技术》课后习题答案】

a web编程习题解析 第1章习题解析 1. 略。

什么是url,什么是uri,它们都由哪几个部分组成,url和uri之间有什么关系 ?

2. 答:url称为统一资源定位符, url通常由4部分组成:协议名称、页面所在主机的dns名、可选的端口号和资源的名称。uri称为统一资源标识符,是以特定语法标识一个资源的字符串。uri由模式和模式特有的部分组成,它们之间用冒号隔开,一般格式如下: schema:schema-specific-part uri是url和urn的超集。

3. 答:①是url,①和②都是uri,③是urn

动态web文档技术有哪些?服务器端动态文档技术的客户端动态文档技术有何不同?

4. 答:动态web文档技术包括服务器端动态文档技术和客户端动态文档技术,前者包括cgi技术、服务器扩展技术和html页面中嵌入脚本技术。其中html页面中嵌入脚本技术包括asp、php和jsp技术。

最流行的客户端动态文档技术是在html页面中嵌入javascript脚本代码。使用javascript可以设计交互式页面。与服务器端动态文档不同,javascript脚本是在客户端执行的。

什么是servlet?什么是servlet容器?它的主要作用是什么? 5. 答:servlet是用servlet api开发的java程序,它运行在

servlet容器中。servlet容器是运行servlet的软件,主要用来扩展web服务器的功能。

简述开发一个servlet的上体步骤

6. 答:开发servlet的一般步骤包括:(1)编写servlet源程序;(2)编译;(3)将servlet部署到servlet容器中;(4)访问执行servlet。

要使一个servlet能够正确编译的运行,应该将什么文件加到classpath环境变量中?

7. 答:tomcat-install\\lib\\servlet-api.jar文件。

web应用程序的部署描述文件名是什么?它是什么类型的文件?应该存放在什么目录中? 8. 答:部

署描述文件名是web.xml,它是xml文件,应该存放在web应用程序的\\web-inf目录中。 什么是404错误?

9. 答:当服务器找不到用户请求的资源时将发生404错误。 什么是jsp页面?它与html页面有什么关系?

10. 答:jsp页面是嵌入了java脚本元素的html页面。 servlet与jsp各适用于什么场合?

11. 答:servlet主要用来实现业务逻辑和控制逻辑,jsp页面主要用来实现表示逻辑。 第2章习题解析

servlet接口中定义了哪几个方法?

1. 答:servlet接口定义了下面5个方法: public void init(servletconfig config)

public void service(servletrequest request, servletresponse response)throws servletexception, ioexception public void destroy()

public servletconfig getservletconfig() public string getservletinfo()

简述servlet的生命周期,生命周期方法有哪几个?

2. 答:servlet是在容器中运行的组件,有一个从创建到销毁的过程,其中包括加载和实例化、初始化、提供服务以及销毁几个阶段。其中生命周期方法有init()、service()和destroy()等3个。 发生哪些事件,浏览器会向服务器发出请求?

3. 答:发生下列事件,浏览器向服务器发出请求。 (1)用户点击了html页面中的超链接;

(2)用户在html页面中填写一个表单并点击提交按钮; (3)用户在浏览器的地址栏中输入url并按回车键。 4. 答:查询串

5. 答:http请求结构由请求行、请求头、空行和请求数据组成。请求行由方法名、请求资源的uri和使用的http版本3部分组成。 6. 答:http响应结构由状态行、响应头和响应数据3部分组成。状态行由http版本、状态码和简短描述3部分组成。

7. 答:get请求主要用来从服务器检索资源,post请求主要用来向服务器发送数据。它们的详细比较请参阅教材的表2.8。 8. 答:在servletrequet接口中定义了setattribute()、

getattribute()、getattributenames()和removeattribute()方法来处理请求作用域的属性。

9. 答:forward()方法转发请求是服务器端控制权的转向,客户端地址栏中不显示转发

后的资源地址。sendredirect()方法是服务器向浏览器发送302状态码,它使浏览器连接到新的位置,浏览器地址栏可看到地址的变化。使用重定向,资源不能位于web-inf目录中。

10. 答:可先通过请求对象的getparameternames()方法得到enumeration对象,然后在其上得到每个请求参数名,再通过getparameter()得到请求参数值。 11. 答:a12. 答:b13. 答:e 14. 答:

action=courseservlet.do httpservlet

com.demo.courseservlet courseservlet

15. 答: ① e ② d ③ c ④ b ⑤ a 第3章习题解析

1. 答:web应用程序是运行在应用服务器之中的。应用服务器为web应用程序提供一种简单的和可管理的对系统资源的访问机制。 2. 答:web.xml bankapp\\web-inf 3. 答:d 4. 答:a 5. 答:d 6. 答:f 7. 答:e 8. 答:d

9. 答:getservletconfig().getservletcontext()或getservletcontext()

10. 答:b11. 答:b 12. 答:d

13. 答:因为applet只能运行在客户端,所以可以将它放在web应用程序的文档根目录的任何位置,但不能将其放在web-inf目录或其子目录中。

14. 答:不能这样做,至少不能直接这样。部署描述文件不允许为一个名称指定多个参数,所以必须像下面这样: init-param

param-namecountries/param-name

param-valueaustralia,brazil,india,uk,us/param-value init-param

然后在servlet中解析param-value串的值并解释字符串中列出的多个值。 15. 答:

package com.demo; import javax.servlet.*;

import javax.servlet.http.*; import java.io.*;

public class hellocounterservlet extends httpservlet{ private integer visits = 0;

public void doget(httpservletrequest request, httpservletresponse response)

throws ioexception,servletexception {

response.setcontenttype(text/html;charset=gb2312); printwriter out = response.getwriter(); visits = visits +1; try{

thread.sleep(2000);

}catch(interruptedexception e){ log(exception during sleeping.); }

out.println(htmlbody);

out.println(欢迎您!br + 该servlet已被访问 + visits + 次。);out.println(/body/html); } }

修改后的servlet如下: package com.demo; import javax.servlet.*;

import javax.servlet.http.*; import java.io.*;

public class hellocounterservlet extends httpservlet{ private integer visits = 0;

private string dbpath = null; public void init(){ try{

dbpath = getservletcontext().getrealpath(/web-inf/counter.db); fileinputstream fis = new fileinputstream(dbpath);

datainputstream dis = new datainputstream(fis); visits = dis.readint(); dis.close();

}catch(exception e){

log(error loading persistent counter, e); } }

public void doget(httpservletrequest request, httpservletresponse response)

throws ioexception,servletexception {

response.setcontenttype(text/html;charset=gb2312); printwriter out = response.getwriter(); synchronized(this){ visits = visits +1;

out.println(htmlbody);

out.println(欢迎您!br +该servlet已被访问 + visits + 次。); out.println(/body/html); } }

public void destroy(){ try{

fileoutputstream fos = new fileoutputstream(dbpath); dataoutputstream dos = new dataoutputstream(fos); dos.writeint(visits); dos.close();

}catch(exception e){

log(error storing persistent counter, e); } } }

第4章习题解析

1. 答:使用请求对象(即httpservletrequest接口)的getsession()方法。

2. 答:如果客户在指定时间内没有访问服务器,则该会话超时。对超时的会话对象,服务器使其失效。通过会话对象的setmaxinactiveinterval()方法设置会话最大超时时间。

web.xml文件使用session-config元素的子元素session-timeout设置最大超时时间,如下所示。 session-config

3. using system.text;

namespace outputsquarevalue

public static void main(string [] args) int i;

for(i=2;i13i2;i++) a[i]=a[i-1]+a[i-2]; }

console.writeline(a[i]); console.readline(); }}

14.编写一个程序段,接收一个长度大于4的字符串,并完成下列功能:

(1) 输出字符段的长度; using system;

using system.collections.generic; using system.linq; using system.text;

namespace consoleapplication2 {

class program {

static void main(string[] args) {

system.console.writeline(请输入一个字符串:); string str1 = console.readline(); if (str1.length = 4) {

console.writeline(您输入的字符串不对:); }

else {

console.writeline(字符串长度为:); console.writeline(str1.length); }

(2) 输出字符段中第一次出现a的位置; char a;

for (int i = 0; i str1.length; i++) {

if (str1[i] == a)

{

console.writeline(第一次出现a的位置:); console.writeline(i + 1); break; } }

(3)在字符串的第四个字符后面插入子串“hello”并输出心字符串;

【篇三:web 课后习题答案】

1.什么是静态网页?什么是动态网页?两者的区别是什么?试举例说明。

我们将静态网页的特点简要归纳如下:

(1)静态网页每个网页都有一个固定的url,且网页url以.htm、.html、.shtml等常见形式为后缀,而不含有“?”;

(2)网页内容一经发布到网站服务器上,无论是否有用户访问,每个静态网页的内容都是保存在网站服务器上的,也就是说,静态网页是实实在在保存在服务器上的文件,每个网页都是一个独立的文件;

(3)静态网页的内容相对稳定,因此容易被搜索引擎检索;

(4)静态网页没有数据库的支持,在网站制作和维护方面工作量较大,因此当网站信息量很大时完全依靠静态网页制作方式比较困难; (5)静态网页的交互性交叉,在功能方面有较大的限制

(1)动态网页以数据库技术为基础,可以大大降低网站维护的工作量;

(2)采用动态网页技术的网站可以实现更多的功能,如用户注册、用户登录、在线调查、用户管理、订单管理等等;

(3)动态网页实际上并不是独立存在于服务器上的网页文件,只有当用户请求时服务器才返回一个完整的网页;

(4)动态网页中的“?”对搜索引擎检索存在一定的问题,搜索引擎一般不可能从一个网站的数据库中访问全部网页,或者出于技术方面的考虑,搜索蜘蛛不去抓取网址中“?”后面的内容,因此采用动态网页的网站在进行搜索引擎推广时需要做一定的技术处理才能适应搜索引擎的要求。 静态网页与动态的区别

??(我加的:看看)程序是否在服务器端运行,是重要标志。在服务器端运行的程序、网页、组件,属于动态网页,它们会随不同客户、

不同时间,返回不同的网页,例如asp、php、jsp、asp.net、cgi等。运行于客户端的程序、网页、插件、组件,属于静态网页,例

如html页、flash、javascript、vbscript等等,它们是永远不变的。 2. 什么是b/s模式?什么是c/s模式?试举例说明。(我加的:b/s 结构(browser/server 结构)结构即浏览器和服务器结构)

答:即浏览器服务器结构。它是随着internet技术的兴起,对c/s结构的一种变化或者改进的结构。在这种结构下,用户工作界面通过浏览器来实现,极少部分事务逻辑在前端(browser)实现,主要事务逻辑在服务器端(server)实现,形成所谓三层结构。这样就大大简化了客户端电脑载荷,减轻了系统维护与升级的成本和工作量,降低了用户的总体成本。

客户机上只要安装一个浏览器(browser),如netscape

navigator或internet explorer,服务器安装oracle、sybase、informix或 sql server等数据库。浏览器通过web server 同数据库进行数据交互。

这种模式,我们通常将其成为瘦客户端模式。 典型的系统:网上银行、网上书店、blog等等 客户机/服务器(client/server,c/s)模式

即客户机和服务器结构。这种体系结构模式是以数据库服务器为中心、以客户机为网络基础、在信息系统软件支持下的两层结构模型。这种体系结构中,用户操作模块布置在客户机上,数据存储在服务器上的数据库中。客户机依靠服务器获得所需要的网络资源,而服务器为客户机提供网络必须的资源。目前大多数信息系统是采用client/server结构。 服务器通常采用高性能的pc、工作站或小型机,并采用大型数据库系统,如oracle、sybase、informix或 sql server。客户端需要安装专用的客户端软件。 这种模式我们也通常成为胖客户端模式。 典型的系统:qq、msn

3. 什么是jsp?与asp、php、asp.net相比,jsp(我加的:动态页面)有哪些优点?? 答:jsp(java server pages)是由sun

microsystems公司倡导的、许多公司参与一起建立的一种动态网页技术标准。jsp技术是用java语言作为脚本语言的,jsp网页为整个服务器端的java库单元提供了一个接口来服务于http的应用程序。 jsp不像cgi,isapi和nsapi那样难于编写和维护,不像php那样只能适应中小流量的网站,也不像asp那样受到跨平台的限制(只能

运行于microsoft公司开发的iis和pws上)。jsp体现了当今最先进的网站开发思想,和其他web开发工具相比,jsp有着它自己强大的优势。 程序可以跨台平执行。jsp可以让开发人员在任意环境中进行开发,在任意环境中进行系统部署,在任意环境中扩展应用程序。

多样化和功能强大的开发工具支持。java有许多非常优秀的开发工具,而且有许多可以免费得到,并且其中的许多已经可以顺利地运行于多种平台之下。 强大的可伸缩性。从只有一个小的jar文件就可以运行servlet/jsp到由多台服务器进行集群和负载均衡,到多台application进行事务处理,一台服务器到无数台服务器,java显示了巨大的生命力。。

4. jsp、java和javascript有什么区别与联系??

答:javascript从其名称含义是java脚本,是在浏览器中运行的脚本语言,由于其大部分语法规范取自于java语法规范,所以取名为javascript。javascript是一门基于对象的弱类型脚本编程语言,主要用来制作网页前台的技术。并且是现在比较热门的ajax技术的核心。 jsp是java server page的首字母缩写,顾名思义,是java的服务端页面,其动态语法部分完全是java规范。jsp是基于java的技术,用于创建可支持跨平台及web服务器的动态网页。从构成情况上来看,jsp页面代码一般由普通的html语句和特殊的基于java语言的嵌入标记组成,所以它具有了web和java功能的双重特性。jsp是和asp,php一样的服务器端语言,主要用来制作网站后台的技术。 java是和c/c++一个等级的强类型编程语言,是纯面向对象的.比起jsp和javascript要复杂的多。一般学好java就能很容易转向其他两门语言。

总结:jsp是java技术的其中之一,所以学好了java过渡到jsp从编程角度来讲比较容易,学好jsp以后要想学好java,就还要学习更多的java方面的东西,比如javabean,企业级应用等等。

javascript严格来讲,除了语法参照了java语法规范外,和java毫无关系,所以两者之间只是语法规范类似,相互之间的过渡就只有语法能够参照,其他的都得分别去了解,javascript是过程式语言,java则是面向对象的。 第2章

1. 什么是 html 语言? html文件有什么特征?

答:html是超文本标记语言(hypertext mark-up language)的缩写,主要用来创建与系统平台无关的网页文档。它是目前网络上应用最为广泛的语言,也是构成网页文档的主要语言,它不是编程语言,而是一种描述性的标记(标签)语言。

html文件是纯文本文件,是由html命令组成的描述性文本,html命令可以说明文字、图形、动画、声音、表格、链接等。html文件能用任意的文本编辑器编辑,如:记事本、写字板、word等,也可以使用所见即所得的编辑器来编辑html文件,如dreamweaver等。 2. 什么是javascript?

答:javascript是由netscape公司开发的一种网页的脚本编程语言,它支持客户端与服务器端的应用程序以及构件的开发。

javascript是一种解释性的语言,它的基本结构形式与其他编程语言相似,需要先编译后执行。javascript是适应动态网页制作的需要而诞生的一种新的编程语言,如今越来越广泛地使用于internet网页制作上。在html基础上,使用javascript可以开发交互式web网页。javascript的出现使得网页和用户之间实现了一种实时性的、动态的、交互性的关系,使网页包含更多活跃的元素和更加精彩的内容。

3. 简述html和javascript在jsp动态网页中所扮演的角色。

答:要使用jsp开发出专业的动态网站,首先必须熟练掌握静态网站的制作技术。html是在学习jsp之前必须了解的基础知识,很多jsp语法的使用都是建立在html文档的基础上。实际开发中,一般都是使用现成的html文档来添加jsp的动态脚本并做适当修改,除了特殊的应用,很少从零开始写一个jsp页面,所以读懂html文档并了解hmtl语言中的技巧为更快地上手jsp提供了很大的帮助。 javascript是jsp知识体系中一个可选的知识模块。也就是说不了解javascript知识也不会影响jsp的应用开发,但是如果掌握了javascript的知识,将可以更加方便地解决网页开发中的某些特定问题,例如经常使用javascript判断用户在表单中输入数据的合法性。 第3章 无

第4章

1.如何在html网页中嵌入jsp程序代码?怎样来定义jsp中的声明区与程序区? 答:在jsp网页中必须于%与%符号间嵌入程序代码。 jsp声明的语法格式为:

%! declaration; [ declaration; ] ... % 或%! 声明; [声明; ] ... % 脚本代码的语法格式如下:

% code fragment % 或% 代码 %

2.请说明jsp中有哪3个指令元素,以及这3个指令的主要用途。

答:page指令:可用来设置jsp网页的特性,如编码方式、引用类、缓冲区等。 include指令:可用来将html、文本文件或者jsp程序加载当前的jsp网页。 taglib指令:可用来引用一个自定义的标签库。

3.jsp中include指令与include动作的区别?

答:include指令是指把其它页面的java代码(源码)加进来,跟本页面的代码合并在一起,相当于把源码从那个页面复制到本页面中来,然后再编译。并且由于本页面编译时已经包含了别的文件的源码,所以以后其它页面更改时,本页面并不理会,因为已经编译过了。 jsp:include动作是指两个页面的代码运行完以后,再把包含的那个页面运行后的html结果页面加到本页面运行后的html结果页面中来。所以是运行时包含,并且还可以传递参数给被包含的页面。

4. jsp网页可以使用的特殊操作元素有哪些?其中jsp:forward与jsp:param操作元素各有什么功能?

答:可使用的操作元素有jsp:param、jsp:include、jsp:forward、jsp:plugin。 jsp:forward:可将当前浏览器显示网页的网址,重新导向新的网址。

jsp:param:主要用来传递参数给jsp程序,而由程序取得参数值。 第5章

1. jsp中的内建对象包含哪些?试简述这些对象在jsp中的主要功能。

答:request:取得客户端数据与系统的信息。 response:响应客户端信息。

application:记录与处理上线者共享的数据。

%! declaration; [ declaration; ] ... % 或%! 声明; [声明; ] ... % 脚本代码的语法格式如下:

% code fragment % 或% 代码 %

2.请说明jsp中有哪3个指令元素,以及这3个指令的主要用途。

答:page指令:可用来设置jsp网页的特性,如编码方式、引用类、缓冲区等。 include指令:可用来将html、文本文件或者jsp程序加载当前的jsp网页。 taglib指令:可用来引用一个自定义的标签库。

3.jsp中include指令与include动作的区别?

答:include指令是指把其它页面的java代码(源码)加进来,跟本页面的代码合并在一起,相当于把源码从那个页面复制到本页面中来,然后再编译。并且由于本页面编译时已经包含了别的文件的源码,所以以后其它页面更改时,本页面并不理会,因为已经编译过了。 jsp:include动作是指两个页面的代码运行完以后,再把包含的那个页面运行后的html结果页面加到本页面运行后的html结果页面中来。所以是运行时包含,并且还可以传递参数给被包含的页面。

4. jsp网页可以使用的特殊操作元素有哪些?其中jsp:forward与jsp:param操作元素各有什么功能?

答:可使用的操作元素有jsp:param、jsp:include、jsp:forward、jsp:plugin。 jsp:forward:可将当前浏览器显示网页的网址,重新导向新的网址。

jsp:param:主要用来传递参数给jsp程序,而由程序取得参数值。 第5章

1. jsp中的内建对象包含哪些?试简述这些对象在jsp中的主要功能。

答:request:取得客户端数据与系统的信息。 response:响应客户端信息。

application:记录与处理上线者共享的数据。

本文来源:https://www.bwwdw.com/article/h36f.html

Top