《JSP课后简答题(6页).doc》由会员分享,可在线阅读,更多相关《JSP课后简答题(6页).doc(6页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、-JSP课后简答题-第 6 页第1章Web技术简介1.简述JSP的工作原理。答:所有的JSP应用程序在首次载入时都被翻译成Servlet文件,然后再运行,这个工作主要是由JSP引擎来完成。当第一次运行一个JSP页面时,JSP引擎要完成以下操作:l 将JSP文件翻译成Servlet文件,Servlet文件是Java应用程序。l JSP引擎调用Java编译器,编译Servlet文件得到可执行的代码文件(.class文件)。l JSP引擎调用Java虚拟机解释执行.class文件,并将运行结果返回给服务器。l 服务器将运行结果以HTML形式作为响应返回给客户端的浏览器。由于一个JSP页面在第一次被访
2、问时要经过翻译、编译和执行这几个步骤,所以客户端得到响应所需要的时间比较长。当该页面再次被访问时,它对应的.class文件已经生成,不需要再次翻译和编译,JSP引擎可以直接执行.class文件,因此JSP页面的访问速度会大为提高。2.简述JSP的两种体系结构。答:JSP规范中分别称作JSP Model 1 和JSP Model 2,它们的本质区别在于处理批量请求的位置不同。Model1,在Model1体系中,JSP页面独自响应请求并将处理结果返回客户。这里仍然存在显示与内容的分离,因为所有的数据存取都是由JavaBean来完成的。尽管Model1体系十分适合简单应用的需要,它却不能满足复杂的大
3、型Web应用程序需要。不加选择地随意运用Model 1,会导致JSP页内被嵌入大量的脚本片段或Java代码。尽管这对于Java程序员来说可能不是什么大问题,但如果JSP页面是由网页设计人员开发并维护的这就确实是个问题了。从根本上讲,将导致角色定义不清和职责分配不明,给项目管理带来不必要的麻烦。Model2体系结构,是一种把JSP与Servlet联合使用来实现动态内容服务的方法。它吸取了两种技术各自的优点,用JSP生成表示层的内容,让Servlet完成深层次的处理任务。Servlet充当控制者的角色,负责管理对请求的处理,创建JSP页面需要使用的Bean和对象,同时根据用户的动作决定把哪个JSP
4、页面传给请求者。在JSP页面内没有处理逻辑,它仅负责检索原先由Servlet创建的对象或JavaBean,从Servlet中提取动态内容插入静态模板。分离了显示和内容,明确了角色的定义以及实现了开发者与网页设计者的分开。项目越复杂,使用Model 2体系结构的优势就越突出。3.简述JSP开发Web站点的主要方式。答:JSP开发Web站点主要有以下几种方式。 (1)直接使用JSP (2)JSP+JavaBean (3)JSP+JavaBean+Servlet (4)J2EE/JavaEE开发模型(5)SSH开发框架第3章 HTML与CSS简介1.简述什么是HTML,有什么基本标签。答:HTML(
5、Hypertext Markup Language)即超文本标记语言或超文本链接语言,是一种用来制作超文本文档的简单标记语言,它不是一种真正的编程语言,只是一种标记符。通过一些约定的标签符号对文件的内容进行标注,指出内容的输出格式。当用户浏览WWW信息时,浏览器会自动解释这些标签的含义,并按照一定的格式在屏幕上显示这些被标记的信息。基本标签有、等。2.简述什么是CSS。答:CSS(级联样式表)是一种设计网页样式的工具,借助CSS的强大功能,网页将在你丰富的想象力下千变万化。CSS是W3C为弥补HTML在显示属性设定上的不足而制定的一套扩展样式标准,其重新定义了HTML中文字显示样式,并增加了一
6、些新的概念,如类、层等,可以实现对文字重叠、定位等。CSS还允许将样式定义单独存储在样式文件中,将显示的内容和显示的样式定义分离,使我们在保持HTML简单明了的初衷的同时能够对页面的布局施加更多的控制,避免代码的冗余,使网页体积更小,下载更快。另外,也可以将多个网页链接到同一个样式文件,从而为整个网站提供一个统一、通用的外观,同时也使多个具有相同样式表的网页可以简单快速的同时更新。3.简述CSS中定义样式表的几种方式。答:(1)通过HTML标签定义样式表(2)使用id定义样式表(3)使用class定义样式表4.简述HTML中加入CSS中的几种方式。答:(1)嵌入式样式表(2)内联式样式表(3)
7、外联式样式表第4章JSP基础知识1.简述JSP程序中三种注释的异同。答:隐藏注释也是JSP的标准注释,写在JSP程序中,在发布网页时完全被忽略,不发给客户,当希望隐藏JSP程序的注释时是很有用的,其格式为:。HTML注释,在发布网页时可以在浏览器源文件窗口中看到HTML注释,其格式为:!- comment -。在JSP程序中,也遵循Java语言本身的注释规则对代码进行注释,这样的注释和隐藏注释相似,在发布网页时完全忽略,在浏览器的源文件窗口中也看不到注释内容,其格式为:。2.简述page指令、include指令和taglib指令的作用。答:page 指令用来定义JSP文件中的全局属性,它描述了
8、与页面相关的一些信息,其作用域为它所在JSP页面和其包含的文件。include指令用于在JSP编译时,为页面插入一个静态文件,如JSP页面、HTML页面、文本文件或是一段Java程序。taglib指令用来指定页面中使用的标签库以及其自定义标签的前缀。3.JSP常用基本动作有哪些?简述其作用。答:其中常用的动作有6种:、 、 。动作可以用于、和动作体中,为其它动作提供附加信息;动作用来把指定文件插入正在生成的页面中;动作用来装载在JSP页面中使用的JavaBean。这个功能非常有用,能够实现JavaBean组件的重用;动作用来设置、修改已实例化Bean中的属性值;动作获取指定Bean属性的值,转
9、换成字符串,然后输出;动作用于转发客户端请求到另一个页面或者是另一个Servlet文件。4.简述include指令和动作的异同。答:include指令和include动作都能实现将外部文档包含到JSP文档中的功能,名称相似,但也有区别。(1)include指令include指令可以在JSP页面转换成Servlet之前,将JSP代码插入其中。(2)include动作动作是在主页面被请求时,将其它页面的输出包含进来。(3)两者的区别和比较动作和include指令之间的根本不同在于它们被调用的时间。动作在请求期间被激活,而include指令在页面转换期间被激活。两者之间的差异决定着它们在使用上的区别
10、。使用include指令的页面要比使用动作的页面难于维护。动作相对于include指令在维护上有着明显优势,而include指令仍然能够得以存在,自然在其它方面有特殊的优势。这个优势就是include指令的功能更强大,执行速度也稍快。include指令允许所包含的文件中含有影响主页面的JSP代码,如响应内容的设置和属性方法的定义。第5章 JSP的常用内置对象1.简述out对象、request对象和response对象的作用。答:out对象主要用来向客户输出各种数据类型的内容,并管理应用服务器上的输出缓冲区(buffer); request内置对象代表了客户端的请求信息,主要用于接收客户端通过H
11、TTP协议传送给服务器端的数据;response对象包含了响应客户请求的有关信息,封装了JSP产生的响应,然后被发送到客户端以响应客户的请求。2.简述 session对象、pageContext对象、exception对象和application对象的作用。答:session对象用来保存每个用户的信息,以便跟踪每个用户的操作状态;pageContext对象提供了对JSP页面内使用到的所有对象及名字空间的访问,提供了对几种页面属性的访问,并且允许向其它应用组件转发request对象,或者从其它应用组件包含request对象; exception对象用来处理JSP文件在执行时发生的错误和异常;ap
12、plication对象保存Web应用程序中公有的数据,可存放全局变量。服务器启动后自动创建application对象,该对象将一直有效,直到服务器关闭。第6章 JSP中数据库基本操作1简述JDBC的作用。答:JDBC是一个面向对象的应用程序接口(API), 通过它可访问各类关系数据库。JDBC也是Java核心类库的一部分,由一些Java语言编写的类和界面组成。JDBC为数据库应用开发人员、Java Web开发人员提供了一种标准的应用程序设计接口,使开发人员可以用纯Java语言编写完整的数据库应用程序。主要实现: (1)同一个数据库建立连接; (2)向数据库发送SQL语句;(3)处理数据库返回的
13、结果。2.简述JDBC驱动和JDBC-ODBC桥的区别和联系。答:JDBC-ODBC桥是一个JDBC驱动程序,它通过将JDBC操作转换为ODBC操作来实现JDBC操作。桥为所有对ODBC可用的数据库实现JDBC。由于ODBC被广泛地使用,该桥的优点是让JDBC能够访问几乎所有的数据库。建议尽可能使用纯Java JDBC驱动程序代替桥和ODBC驱动程序,这可以完全省去了ODBC所需的客户机配置,也免除了Java虚拟机被桥引入的本地代码中的错误所破坏的可能性。第8章 JSP与JavaBean1.简述JavaBean的种类。答:JavaBean是遵循特殊规范的Java类。按功能分,可以分为可视Bea
14、n和不可视两类。l 可视Bean是在画面上可以显示的Bean,通过属性接口接收数据并显示在画面。l 不可视Bean即JSP中时常使用的Bean,在程序的内部起作用,如用于求值、存储用户数据等。2.简述创建JavaBean的规则。答:JavaBean定义(声明)应遵循的规范:l 必须有一个无参的构造函数。l 对在Bean中定义的所有属性提供getter和setter方法,并且这些方法是公共的。l 对于boolean类型的属性,其getter方法的形式为isXXX的,其中XXX为首字母大写的属性名。l 对于数组类型的属性,要提供形式为getXXX和setXXX的方法。第9章 Java Servle
15、t技术1.简述什么是Servlet。答:Servlet是Java Web应用程序中的组件技术,是与JSP样运行在服务器端的Java应用程序,实现与JSP类似的功能,Servlet本身是一个Java类,可以动态地扩展服务器的能力。所有的JSP文件要事先转换为一个Servlet才能运行,执行JSP文件的时候,首先JSP Container会将其转译为Servlet文件,并自动编译解释执行。JSP中使用到的所有对象都将被转换为Servlet,然后被执行。2.简述Servlet的生命周期。答:Servlet是在服务器端运行的。Servlet是javax.servlet包中HttpServlet类的子类
16、,由服务器完成该子类的创建和初始化。Servlet的生命周期定义了一个Servlet如何被加载、初始化,以及它怎样接收请求、响应请求、提供服务。Servlet的生命周期主要由3个过程组成。3.简述Servlet技术的特点。答:(1)有效性(2)方便性 (3)功能强大性 (4)可移植性(5)安全性 (6)便宜4.简述Servlet与JSP的区别。答:Servlet与JSP相比有以下几点区别:(1)编程方式不同Servlet是按照Java规范编写的Java程序,JSP是按照Web规范编写的脚本语言。(2)编译方式不同Servlet每次修改后需要重新编译后才能运行,JSP是被JSP Containe
17、r编译为Servlet文件。 (3)运行速度不同由于一个JSP页面在第一次被访问时要被编译成Servlet需要一段时间,所以客户端得到响应所需要的时间比较长。当该页面再次被访问时,它对应的.class文件已经生成,不需要再次翻译和编译,JSP引擎可以直接执行.class文件,因此JSP页面的访问速度会大为提高。总之,在运行速度上,Serlvet比JSP速度快。5.简述Servlet在web项目中的作用。答:(1)Servlet在服务器端的作用在浏览器访问服务器时,所有的JSP文件都会转化为Servlet文件,Servlet文件负责在服务器端处理用户的数据。这部分功能在开发服务器时已经封装成底层
18、的功能,我们可不用关心这部分功能,除非自己在开发一个服务器时才用到。(2)Servlet在MVC设计模式中应用MVC是一种目前广泛流行的软件设计模式,早在70年代,IBM就进行了MVC设计模式的研究。近来,随着JavaEE的成熟,它成为在JavaEE平台上推荐的一种设计模型,是广大Java开发者非常感兴趣的设计模型。随着网络应用的快速增加,MVC模式对于Web应用的开发无疑是一种非常先进的设计思想,无论选择哪种语言,无论应用多复杂,它都能为理解分析应用模型提供最基本的分析方法,为构造产品提供清晰的设计框架,为软件工程提供规范的依据。MVC 设计模式是目前用得比较多的一种设计模式,被广泛应用于W
19、eb 应用程序中。Model(模型)表示业务逻辑层,View(视图)代表表示层,Controller(控制器)代表控制层。其中,控制器部分由Servlet完成,这也是我们实际在项目开发中用到的Servlet。(3)Servlet在Web框架中的应用在Java Web项目开发中用到的主要组件技术有JSP、Servlet、JavaBean、JDBC、XML、Tomcat等技术。为了整合Java Web组件技术提高软件开发效率,近年来推出许多基于MVC模式的Web框架技术,如Struts、Maverick、WebWork 和Turbine 等。其中比较经典的框架技术是Struts。在Struts框架技术中,实现了MVC模式,其中已封装好核心控制器,由Servlet实现;我们还需要实现Action来完成对数据流量的控制,Action在Struts1.X版本中由Servlet实现控制功能,在Struts2.X版本中Action是业务控制器,由Java类来实现。有关Servlet在Struts中的应用请参考Struts相关资料。