JSP复习

JSP复习
JSP复习

单选10道20分;判断10道20分;简答5道30分;编程2/3道30分(写关键代码片段既可,不要求写全整个代码, 需要用到的变量可以自己命名)

用全英文答题有适当加分,使用中文答题,回答正确不扣分;

复习提纲:(加粗的表示没找到)(没加页数的表示没在书上找到)(存疑表示不知对错)

基本知识点:(通过单选、判断、简答来考察)

1、servlet mapping在哪个配置文件中定义?

web.xml

2、servlet 的几个类中,其中一个XXX类含有getWriter() 方法,返回的是PrintWriter类型对象,用于向客户端浏览器输出内容,这个XXX类是什么?(P1A.14)HttpServletResponse

3、HttpServletResponse类中用来定义content type 的方法是什么?(P1A.14)setContenType

4、处理servlet life cycle events 的接口或类都有哪些?(P1B.27)

Servlet.ServletRequestListener

Servlet.ServletRequestAttributeListener

ServletContextListener

ServletContextAttributeListener

HttpSessionListener

HttpSessionAttributeListener

HttpSessionActivationListener

5、Servlet子类都有哪些?(P1A.6)

GenericServlet

HttpServlet

6、数据库query string 允许最多有几个字符?(P1C.9)

240个

7、JSP有哪些隐含可用的对象?

application、config、exception、out、page、pageContext、request、response、session

共九个。

8、servlet and CGI 主要区别是什么?(P1A.3)

Servlet的初始化代码只执行一次。在服务器上的单独的线程可以处理每一个客户端请求,可以防止创建不必要的进程,从而提高服务器的性能。Servlet也继承了Java编程语言所有的特性。

9、WAR 是J2EE 部署时的打包文件,里面一个什么文件是必须要有的?(存疑)

10、HttpSession.getAttribute() 返回什么?(P2A.16)(加入了自身理解)

在session中检索出来的特定的字符串对应的值。

11、DataSource.getConnection() 干什么用的?

与数据库进行连接。

12、GenericServlet是做什么的?其中有个service方法是做什么用的?

genericservlet类给出了设计servlet的一些骨架,定义了servlet生命周期,还有一些得到名字、配置、初始化参数的方法。

用于对客户端的请求进行响应。

13、http是什么?有什么特点?

HyperText Transfer Protocol,超文本传输协议。

1.支持客户/服务器模式。

2.简单快速。客户向服务器请求服务时,只需传送请求方法和路径。请求方法常用的有GET、HEAD、POST。每种方法规定了客户与服务器联系的类型不同。

由于HTTP协议简单,使得HTTP服务器的程序规模小,因而通信速度很快。

3.灵活:HTTP允许传输任意类型的数据对象。正在传输的类型由Content-Type加以标记。

4.无连接:无连接的含义是限制每次连接只处理一个请求。服务器处理完客户的请求,并收到客户的应答后,即断开连接。采用这种方式可以节省传输时间。

5.无状态:HTTP协议是无状态协议。无状态是指协议对于事务处理没有记忆能力。缺少状态意味着如果后续处理需要前面的信息,则它必须重传,这样可能导致每次连接传送的数据量增大。另一方面,在服务器不需要先前信息时它的应答就较快。

14、HTTP Post、HTTP Get方法有什么区别?

GET一般用于获取/查询资源信息,而POST一般用于更新资源信息。

15、CGI是什么?和J2EE的优缺点比较情况。

Common Gateway Interface,通用网关接口

优点:

简单便捷,提供了一种简单的方法来连接数据库。

缺点:

由于每个连接都启动一个进程,服务器的效率会受到很大影响。

业务逻辑层和表示逻辑层混合了。

语言并不总是安全和面向对象的,也并不总是平台独立的。

16、Servlet是什么,运行在哪里,生命周期牵扯到哪些方法, 调用顺序, 其中哪些方法是可以覆盖的, 这些方法的参数是什么? Servlet 初始化和销毁方法什么时候会运行?会画生命周期各状态的转换图。(P1A.9)

Servlet是用java编写的服务器端程序,运行在服务器端。

生命周期牵扯到的方法:init() service() destroy()

调用顺序:(P1A.9自己看)

Protected void doGet(HttpServletRequestreq,HttpServletRespose res)

Protected void doPost(HttpServletRequestreq,HttpServletRespose res)

Protected void doHead(HttpServletRequestreq,HttpServletRespose res)

初始化方法:Servlet被装载后,Servlet容器创建一个Servlet实例并且调用Servlet的init()方法进行初始化。在Servlet的整个生命周期内,init()方法只被调用一次。

销毁方法:当WEB应用被终止,或Servlet容器终止运行,或Servlet容器重新装载Servlet 新实例时,Servlet容器会先调用Servlet的destroy()方法。在Servlet的整个生命周期内,init()方法只被调用一次。

整体流程大致就是先初始化,再调用各种service方法,最后销毁。

17、J2EE 有几种线程模式?各是什么?SingleThreadModel是什么有何用?

单线程模式

多线程模式

实现这个接口的Servlet 在被多个客户请求时一个时刻只有一个线程运行, Servlet引擎将以单线程模式来调用其service方法。

18、web.xml 中可以配置哪些内容?

Web应用的相关内容

声明应用范围内的初始化参数

设置过滤器

配置监听器

配置Servlet

配置欢迎页

配置错误页

19、HttpServlet类中都有些什么方法, 有何不同?(P1B.18)

setAttribute():保存数据

getAttribute():取出数据,返回string类型对象

getAttributeNames():取出数据,返回enumeration类型对象

20、ServletContext是做什么用的?都包含哪些方法?怎么取里面的信息?(P1B.6)

是一个全局储存信息的空间。

包含setAttribute()、getAttribute()、getAttributeNames()、getInitParameter()、getInitParameterNames()、getMajorVersion()、getMinorVersion()

获取ServletContext对象后使用getAttribute()方法获得共享的数据。

还有getInitParameter()

21、捕捉Servlet 生命周期的各种事件都需要用到哪些监听器?ServletRequestListener

ServletRequestAttributeListener

ServletContextListener

ServletContextAttributeListener

HttpSessionListener

HttpSessionAttributeListener

HttpSessionActivationListener

22、RequestDispatcher做什么用的?

请求分配器是javax.servlet.requestdispatcher接口的一个对象,允许servlet对象间通信。你可以使用请求分配器对另一个资源提出请求。你也可以使用请求分配器获取在servlet上的另一个资源的内容。

23、JSP是什么,怎么运行的? 和Servlet有何关系? 有哪些优缺点?

JSP是一种帮助软件开发人员动态创建基于HTML、XML或其他文档类型的网页的工具。

运行JSP需要兼容网络的servlet容器。

Servlet和JSP有一些共同的特性,例如平台的独立性,数据库驱动的Web应用程序的创建,和服务器端编程能力。JSP引擎是将JSP页编译为servlet的web容器。JSP被转换成servlet。优点:

JSP页面凭借静态和动态内容的单独放置,有助于web开发人员和网站设计者独立工作。缺点:

(1)与ASP也一样,Java的一些优势正是它致命的问题所在。由于为了跨平台的功能,具有极度的伸缩能力,所以极大的增加了产品的复杂性。

(2) Java的运行速度是用class常驻内存来完成的,所以它在一些情况下会使用过多的内存。

24、什么是MVC? Web开发中的Boundary, Service, Entity 组件各指什么?什么是DAO?作用是什么?

MVC(model view controller)用于开发交互式java EE应用,支持不同类型的应用程序客户端。

DAO((Data Access Object数据访问对象),是一个数据访问接口,使我们可以在不修改应用程序代码的情况下随时更改数据访问代码。

25、J2EE编程中的request和response是干什么用的?从http request stream中能得到哪些信息?http 如何从request中存取信息?存在其中的信息与其他类型如ServletContex中的信息的scope 有何区别?

Request:它用于表示由HTTP客户端发送的请求信息。

Response:它用于返回由HTTP客户端请求的信息。

26、HTTP请求中的请求字符串允许的最大长度是多少?

与使用的浏览器有关。

27、如何从request中拿到http的“Host”值?

可以使用继承了ServletRequest接口的HttpServletRequest接口来拿到http的“Host”值。

HttpServeltRequest request;

String host=request.getHeader(“Host”);

28、如何获取Servlet的初始化参数?

String name=getServletConfig().getInitParameter(“name”);

29、JSTL是什么?做什么用的?等相关标签是干什么用的?

JSTL(JSP Standard Tag Library,JSP标准标签库),可以用JSP页面中的标签来完成重复性的任务,从而缩减代码量。

30、JNDI是什么? DataSource起什么作用, 与JNDI有什么关系?JDBC是什么?JNDI与JDBC 有什么关系?

JNDI(Java Naming and Directory Interface,Java命名和目录接口),是提供命名和目录服务的java应用程序。

数据源是一种包含连接基础数据库的所需要的信息的资源。

我们可以用JNDI来绑定数据源。

JDBC(Java Data Base Connectivity,java数据库连接)是一种用于执行SQL语句的Java API。

31、Filter起什么作用?Filter.init() 是干什么用的?有何特点?FilterChain是什么类?干什么的?

servlet筛选器用于拦截在客户端和servlet之间流动的请求和响应。它可以修改来自Web客户端的请求的标头和内容,并将其转发到目标servlet,拦截和处理servlet返回的标头和内容。

初始化过滤器实例时,init方法将被调用一次。

使用init方法:执行过滤器在其生命周期中使用的资源的一次性初始化。检索部署描述符中配置的初始化参数。

32、J2EE的会话管理技术有哪些?谁是默认的会话管理方式? Session对象能否在几个Web 应用程序间共享?干什么用的? 填什么? 意思是什么?

四种:

Hidden form fieds

URL rewriting

Cookies

Servlet session API

默认是cookies

可以共享。

会话超时用于确定会话超时的分钟数。

30

33、如何往HttpSession中存取信息?如何得到session对象?

存信息:

String name=request.getParameter(“name”);

HttpSession session=request.getsession(true);(获得session对象)

session.setAttribute(“name”,name);

取信息:

String name=session.getAttribute(“name”);

34、Web容器工作过程,会画图示意(P1A.5)

35、J2EE编程里都有哪些scope可以用来存储信息?

session

ServletContext

HttpServletRequest

JSP

JavaBean

36、J2EE采用的安全机制有哪4个? 之间的区别是什么?(P4B.3)

Authentication:验证一名用户的身份。

Authorization:给用户不同的权限来访问不同的文件。

Data integrity:确保服务器与客户端在传送数据时数据不会被修改。

Auditing:根据记录对用户权限进行不断的审核。

37、JavaBeans 是做什么的?

JavaBeans是JAVA语言写成的可重用组件。通过JavaBeans可以将页面设计与后台代码分开,提高了制作效率。

编程能力:(通过编程题考察)

1、在Servlet里如何得到HTML表单里的参数?

HTML page:

Servlet1 page:

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

{

String name=request.getParameter(“name”);

String id=request.getParameter(“id”);

}

使用String getParameter(String name)和String[] getParameterValues

前者返回一个值,后者返回多个值。

2、从ServletContext中可存取哪些信息, 如何存取?

public class RetrievingCntx extends GenericServlet

{

ServletContextctx;

String url;

Public void init(ServletConfigcfig)

{

Ctx = cfig.getServletContext();

}

Public void service (ServletRequest request, ServletResponse response) throws

ServletException ,IOException

{

Url = (String) ctx.getAttribute(“URL”);

PrintWriter pw = response.getWriter();

response.setContentType(“text/html”);

Pw.println(“”);

}

}

ServletContextctx;

Public void init(ServletConfigcfig)

{

Ctx=cfig.getServletContext();

}

Public void service(ServletRequestrequest,Servletresponse response)throws ServletException,IOException

{

Ctx.setAttribute(“url”,”abcdefg”); //存

String url=ctx.getAttribute(“url”); //取

}

3、如何通过request来存取及传递信息;

可以使用在javax.servlet.ServletRequest接口中的setAttribute()方法在请求对象中存储信息。其他应用的servlet可以使用javax.servletRequest接口中的getAttribute()方法来取得数据的值。

Import javax.servlet.*;

Import javax.servlet.http.*;

Import java.io.*;

Public class CalculatorServlet extends HttpServlet

{

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

{

Int num1 = Integer.parseInt(request.getParameter(“number1”));

Int num2 = Integer.parseInt(request.getParameter(“number2”));

Int result = num1 + num2;

request.setAttribute(“result”, new Integer(result));/存

ServletContextcontx = getServletConfig().getServletContext();

requestDispatcherreqDispatcher= contx.getRequestDispatcher(“/servlet/DisplayServlet”);

reqDispatcher.forward(request, response);

}

}

Import javax.servlet.*;

Import javax.servlet.http.*;

Import java.io.*;

Public class DispalyServlet extends HttpServlet

{

Public void doGet(HttpServletRequest, HttpServletResponse response) throws ServletException, IOException

{

Integer res = (Integer)request.getAttribute(“result”);/取

PrintWriter pw = response.getWriter();

Pw.println(“”);

}

}

4、如何实现在doFilter() 方法中获取客户端的IP地址?(P2B.23)

XXXX

String path=((HttpServletRequest)request).getRequestURI();

HttpServletRequest request=(HttpServletRequest)reqest;

String uri=request.getRequestURI();

5、如何从一个Servlet里通过RequestDispatcher跳转到另一个Servlet里?(P2B.5)RequestDispatcher dispatch = getServletContext().getRequestDispatcher(“/HoteInformation”); Dispatch.forward(request, response);

(完整版)基于jsp的网上书店毕业设计论文

1.网上书店系统概述 网上书店是电子商务的一部分,电子商务应有的功能、网上书店也应该具有。由于商家软件设计不大一样,因此网上书店的功能也不完全一致,有的多,有的少。作者本人认为,网上书店是一种无店铺,人不出门,在计算机联网的网络上作业,就可进行远距离的图书销售与订购。一般应具有如下功能:(1)向上网顾客提供图书期刊在线电子版(虚拟版),供顾客订购、下载;(2)提供新书目、新书内容介绍、书评等,供顾客选择图书时参考;(3)提供书店存货书目,供顾客挑选或补全、补缺;(4)提供网上书店的有关资料,如营业执照等,让顾客了解网上书店的可信程度;(5)开辟网上论坛,供顾客在网上讨论有关图书内容与网上发行中的有关问题;(6)通过网络收集顾客采访图书的计划与要求,顾客的阅读爱好、兴趣、阅读历史和对网上书店的建议与要求;(7)网上订购图书、期刊;(8)安全认证、数字签名、网上结算和支付,并提供正式发票;(9)图书配送;(10)退货处理;(11)质量监控。但是由于时间及本人能力方面的一些条件所限,本次设计的网上书店系统主要是以实现购书和定单的功能作为设计的重点,实现了网络书店的一些最基本和必须的功能,其他的详细复杂的功能并没有涉及。

2.系统需求分析及设计 2.1业务及用户需求分析 要设计一个实用的网络书店销售管理系统,就必须首先明确应用环境对系统的要求。本系统开发的总体设计目标为开发一个在线系统,实现图书的在线查找、销售,以及在线管理等功能。系统以Windows操作系统为平台,网络联接以TCPIP协议为基础,使用Web服务器提供信息的浏览和查询,采用流行的BS三层体系结构。 因此,该系统需主要满足以下几方面需求: 1.用户的管理,含注册、检验及修改等功能。 2.在线图书销售,包括查找、购物车及定单等功能。 3.图书在线管理,如浏览、修改、添加和删除图书等。 2.2系统可行性分析 本节从技术的可行性,经济的可行性以及操作的可行性三个方面来说明本网站的可行性。 2.2.1技术可行性 1.硬件:计算机的存储量大,运算速度快,外部设备的功能好、效率高、可靠性高, 通信设备的能力、质量都可以满足要求。 2.系统软件: (1)操作系统Windows XP2000接口能力强,数据库管理系统的功能足够。 (2)Java语言是一种优秀的编程语言。它最大的优点就是与平台无关,在Windows 、Linux以及其它平台上,都可以使用相同的代码。“一次编写,到处运行”的特点,使其在互联网上广泛采用。JSP+JavaBeans几乎可以在所有平台上通行无

JSP技术简介及特点——外文翻译

JSP Technology Conspectus And Specialties By:Kathy Sierra and Bert Bates Source: Servlet&JSP The JSP (Java Server mix) technology is used by the Sun microsystem issued by the company to develop dynamic Web application technology. With its easy, cross-platform, in many dynamic Web application programming languages, in a short span of a few years, has formed a complete set of standards, and widely used in electronic commerce, etc. In China, the JSP now also got more extensive attention, get a good development, more and more dynamic website to JSP technology. The related technologies of JSP are briefly introduced. The JSP a simple technology can quickly and with the method of generating Web pages. Use the JSP technology Web page can be easily display dynamic content. The JSP technology are designed to make the construction based on Web applications easier and efficient, and these applications and various Web server, application server, the browser and development tools work together. The JSP technology isn't the only dynamic web technology, also not the first one, in the JSP technology existed before the emergence of several excellent dynamic web technology, such as CGI, ASP, etc. With the introduction of these technologies under dynamic web technology, the development and the JSP. Technical JSP the development background and development history In web brief history, from a world wide web that most of the network information static on stock transactions evolution to acquisition of an operation and infrastructure. In a variety of applications, may be used for based on Web client, look no restrictions. Based on the browser client applications than traditional based on client/server applications has several advantages. These benefits include almost no limit client access and extremely simplified application deployment and management (to update an application, management personnel only need to change the program on a server, not thousands of installation in client applications). So, the software industry is rapidly to build on the client browser multi-layer application. The rapid growth of exquisite based Web application requirements development of technical improvements. Static HTML to show relatively static content is right choice, The new challenge is to create the interaction based on Web applications, in these procedures, the

JSP课程各章节选择题答案

1)如果做动态网站开发,以下()可以作为服务器端脚本语言。 A . HTML B. JSPC. JavaScript D. Java 2)在设计Web项目的目录结构时,一般吧JSP和HTML文件放在()下。 A . src目录 B .文档根目录或其子文件下 WEB-INF 目录 C . META-INT 目录 D 3) 在Web项目的目录结构中,web.xml文件位于()中。 A . src目录 B .文档根目录 C . META-INF 目录 D .WEB-INF 目录 4) 下面对于B/S架构与C/S架构的描述错误的是()。 A . B/S架构解决了C/S架构的弊端,因而在程序开发中将会逐步取代C/S架构 B. B/S机构是基于in ternet网络实现的,使得用户访问的范围扩大 C . C/S架构师基于局域网实现的,当程序发生改的后,需要对每一个客户端进行维护 D . C/S可以设计出丰富的界面,而B/S则相对处于劣势 5)以下选项中()是正确的URL,(选两项) A . B . C . D . /n ews/welcome.html

C . response.setPageCoding() D . response.setCharset() 6) 在某个JSP 页面中存在这样一行代码, <%= 2”+ 4" %>运行该JSP 后,以下说法正 确的是( )。 A .这行代码没有对应的输出 B .这行代码对应的输出时 6 C. 这行代码对应的输出时 24 D .这行代码将引发错误 7) 与 page 指令 <%@ page import= java.util.*, java.text.* %> 等价的是( )。 A . <%@ page import= “java.util.* %> <%@ page import= “java.text.* “ %> B . <%@ page import= “java.util.* ” , import= “java.text.* “ %> C . <%@ page import= “java.util.* “ ; %> <%@ page import= “java.text.* “ ; %> D . <%@ page import= “java.util.* ;java.text.* “ %> 8) 下列选项中, ( )是正确的表达式。 A. <% String s = “hello world ” ;%> B . <% = “hello world ” ;%> C . <% = “hello world ” %> D . <% ! “hello world ” %> 9) 如果请求页面中存在两个单选按钮(假设单选按钮的名称为 sex ) , 分别代表男和女, 该页面提交后,为了获得用户的选择项,可以使用以下( )方法。 A. request.getParameter(sex); B . request.getParameter(“sex ”); C . request.getParameterValues(sex); D . request.getParameterValues(“sex ”); 10) JSP 内置对象request 和getParameterValues()方法的返回值是( )。 B. Object[ ]C . String D . Object 第三章 11) 使用request 对象进行重定向时,使用的是( A . gertRequestDispatcher(); C. sendRedirect() 12) 对于转发与重定向的描述错误的语句是( A ?重定向是在客户端发生作用,通过请求重新的地址实现页面转向 B .使用转发时由于是服务器内部控制权的转移,因而地址栏中的 URL 没有变化 C .使用重定向时可以在地址栏中看到转向后的 URL D .转发与重定向都可以实现在页面跳转,因而没有区别 13) 为了避免服务器的响应信息在浏览器端显示为乱码, 通常会使用 ( )语句重新设置 字符编 码。 B. response.setCharacterEncoding() A . String[ ] )方法。 B . forword() D . setRequestDispatcher(); )。 A . reponse.setContentType();

基于JSP的网上购物系统本科毕业论文

毕业论文声明 本人郑重声明: 1.此毕业论文是本人在指导教师指导下独立进行研究取得的成果。 除了特别加以标注地方外,本文不包含他人或其它机构已经发表或撰写过的研究成果。对本文研究做出重要贡献的个人与集体均已在文中作了明确标明。本人完全意识到本声明的法律结果由本人承担。 2.本人完全了解学校、学院有关保留、使用学位论文的规定,同意学校与学院保留并向国家有关部门或机构送交此论文的复印件和电子版,允许此文被查阅和借阅。本人授权大学学院可以将此文的全部或部分内容编入有关数据库进行检索,可以采用影印、缩印或扫描等复制手段保存和汇编本文。 3.若在大学学院毕业论文审查小组复审中,发现本文有抄袭,一切后果均由本人承担,与毕业论文指导老师无关。 4.本人所呈交的毕业论文,是在指导老师的指导下独立进行研究所取得的成果。论文中凡引用他人已经发布或未发表的成果、数据、观点等,均已明确注明出处。论文中已经注明引用的内容外,不包含任何其他个人或集体已经发表或撰写过的研究成果。对本文的研究成果做出重要贡献的个人和集体,均已在论文中已明确的方式标明。 学位论文作者(签名): 年月

关于毕业论文使用授权的声明 本人在指导老师的指导下所完成的论文及相关的资料(包括图纸、实验记录、原始数据、实物照片、图片、录音带、设计手稿等),知识产权归属华北电力大学。本人完全了解大学有关保存,使用毕业论文的规定。同意学校保存或向国家有关部门或机构送交论文的纸质版或电子版,允许论文被查阅或借阅。本人授权大学可以将本毕业论文的全部或部分内容编入有关数据库进行检索,可以采用任何复制手段保存或编汇本毕业论文。如果发表相关成果,一定征得指导教师同意,且第一署名单位为大学。本人毕业后使用毕业论文或与该论文直接相关的学术论文或成果时,第一署名单位仍然为大学。本人完全了解大学关于收集、保存、使用学位论文的规定,同意如下各项内容: 按照学校要求提交学位论文的印刷本和电子版本;学校有权保存学位论文的印刷本和电子版,并采用影印、缩印、扫描、数字化或其它手段保存或汇编本学位论文;学校有权提供目录检索以及提供本学位论文全文或者部分的阅览服务;学校有权按有关规定向国家有关部门或者机构送交论文的复印件和电子版,允许论文被查阅和借阅。本人授权大学可以将本学位论文的全部或部分内容编入学校有关数据库和收录到《中国学位论文全文数据库》进行信息服务。在不以赢利为目的的前提下,学校可以适当复制论文的部分或全部内容用于学术活动。 论文作者签名:日期: 指导教师签名:日期: 基于JSP的网上购物系统设计 摘要:本网上购物系统是一个基于Internet,采用B2C(Business to Consumers)模式,并根据现有的网上购物系统的现状而设计开发的电子商务平台。它不但可以扩大商家的规模和市场影响力,而且可以减少企业的经营成本,提高工作效率。 本文首先介绍了网上购物系统的现状及开发背景,然后论述了系统的设计目标,系统需求和总体设计方案,较详细的论述了系统的详细设计和实现。最后,本文对网 上购物系统进行了系统检测并提出了还需要改进的问题。 本系统主要为用户提供了会员注册,购物车管理,用户资料修改等功能,为管理员提供了商品管理,用户信息管理等功能。在设计方面,本系统采用B/S三层结构,同时使用JSP技术进行动态页面的设计,从系统的安全性和代码的可重用性方面考虑,运用JavaBean对程序的关键代码进行封装。后台数据库选用My SQL数据库。 关键词:B/S结构;JavaBean;JSP;

JSP技术简介(外文翻译)

JSP技术概述 一、JSP的好处 二、JSP页面最终会转换成servler。因而,从根本上,JSP页面能够执 行的任何任务都可以用servler来完成。然而,这种底层的等同性并不意味着servler和JSP页面对于所有的情况都等同适用。问题不在于技术的能力,而是二者在便利性、生产率和可维护性上的不同。毕竟,在特定平台上能够用Java编程语言完成的事情,同样可以用汇编语言来完成,但是选择哪种语言依旧十分重要。 和单独使用servler相比,JSP提供下述好处: 三、λJSP中HTML的编写与维护更为简单。JSP中可以使用常规的HTML: 没有额外的反斜杠,没有额外的双引号,也没有暗含的Java语法。 四、λ能够使用标准的网站开发工具。即使对那些对JSP一无所知的 HTML工具,我们也可以使用,因为它们会忽略JSP标签(JSP tags)。 五、λ可以对开发团队进行划分。Java程序员可以致力于动态代码。Web 开发人员可以将经理集中在表示层(presentation layer)上。对于大型的项目,这种划分极为重要。依据开发团队的大小,及项目的复杂程度,可以对静态HTML和动态内容进行弱分离(weaker separation)和强分离(stronger separation)。 六、在此,这个讨论并不是让您停止使用servlets,只使用JSP。几乎 所有的项目都会同时用到这两种技术。针对项目中的某些请求,您可能会在MVC构架下组合使用这两项技术。我们总是希望用适当的工具完成相对应的工作,仅仅是servlet并不能填满您的工具箱。 二、JSP相对于竞争技术的优势 许多年前,Marty受到邀请,参加一个有关软件技术的小型(20个人)研讨会.做在Marty旁边的人是James Gosling--- Java编程语言的发明者。 隔几个位置,是来自华盛顿一家大型软件公司的高级经理。在讨论过程中,研讨会的主席提出了Jini的议题,这在当时是一项新的Java技术.主席向该经理询问他的想法.他继续说,他们会持续关注这项技术,如果这

JSP企业面试题及答案(选择题)

一、单项选择题: 1.下列哪个不是HTML的常用标记。() A. B. C. D. 2.创建表单的HTML代码是() A.

B. C.