第一章JSP概述1.1什么是JSPJSP(JavaServerPages)是由Sun公司倡导、多家公司参与,于1999年推出的一种动态网页技术标准.它是基于JavaServlet的WEB开发技术,利用这一技术可以开发动态的、高性能的WEB应用程序.在HTML文件中加入Java程序片段和JSP标记,就构成了JSP网页.在技术方面,JSP与ASP非常相似.1.2JSP的优势JSP技术主要有以下优点:1.JSP代码跨平台,即一次编写,处处运行众所周知,由于微软的垄断性,它的产品可移植性做得十分差,ASP也不例外,在Windows平台下编写的ASP代码,很难拿到别的平台下运行,相反,JSP使用的是Java语言,它继承了Java语言的特点——“一次编写,处处运行”,这种概念正越来越深远地影响着因特网行业的交互式Web页面的设计理念。JSP页面可以非常容易地跨平台、跨Web服务器软件来设计和开发源码。2.JSP组件跨平台JSP组件(企业JavaBeans、JavaBeans或定制的JSP标签)都是跨平台可重用的。企业JavaBeans组件可以访问传统的数据库,并能以分布式系统模式工作于Solaris、Linux、UNIX和Windows平台。3.支持多种网页格式目前,JSP技术支持的网页格式还没有一个明确的标准。一般来说,JSP技术既可以支持HTML/DHTML的传统浏览器文件格式,又可以支持应用于无线通信设备如移动电话、PDA等设备进行网页预览的WML文件格式,还可以支持其他一些B2B电子商务网站应用的XML格式。4.JSP标签可扩充性尽管ASP和JSP都使用标签与脚本技术来制作动态Web网页,JSP技术允许开发者扩展JSP标签,定制JSP标签库,所以网页制作者充分利用与XML兼容的标签技术强大的功能,大大减少对脚本语言的依赖。由于定制标签技术,使网页制作者降低了制作网页的复杂度。5.健壮性与安全性由于JSP页面使用的脚本语言是java语言,因此,它就具有java技术的所有好处,包括健壮的存储管理和安全性.1.3JSP的劣势1.JSP技术极大的增加了产品的复杂性.为了获得系统的跨平台功能和产品伸缩能力,java系统开发了多种产品,如,JRE、JDK、J2EE、EJB、JSWDK、JavaBeans,只有有效地将它们组合在一起,才能产生强大的功能.2.java的高效率运行需要占用大量的内存和硬盘空间.一方面,java的高速运行是通过.class文件常驻内存来实现的.另一方面,还需要硬盘空间来存储一系列的.java文件和.class文件以及对应的版本文件.3.JSP程序调试困难.JSP页面执行时,首先被转换为.java文件(Servlet),然后将.java文件编译为字节码文件.这样,出错信息实际上指向的是转换后的那个.java文件(Servlet),而不是JSP本身.1.4JSP与ASP比较总的来说,JSP和ASP在技术方面有许多相似的地方。它们都是基于Web的应用程序开发方案,它们都是在Web服务器端执行的程序.ASP在网页制作中占据了一定的地位,但是其本身还是有很大缺点.JSP出现在ASP之后,兼顾了ASP的很多优点,同时也克服了ASP的一些缺点,是一种比较成热的网页开发程序语言。以下是五个方面的比较:1.具有相同的程序结构:开发的WEB应用程序,都是将用户界面和业务逻辑分开.2.采用不同的编程语言:JSP采用的是java语言;ASP采用的是JavaScript或VBScript脚本语言.3.可支持的WEB服务器:JSP支持流行的Web服务器,如Apache,Resin,Tomcat和MicrosoftlIS.而ASP只支持MicrosoftIIS或者PersonalWebServer。4.可支持的操作系统平台:JSP与平台无关,可以在所有支持Java的平台上运行,包括Linux,Unix,Windows及WindowsNT.而ASP只支持Windows.5.性能比较.性能JSPASP易学性容易很容易运行速度快较快运行系统开销小较大平台均可Windows安全性好不好函数支持广不广厂商支持程度广泛不广泛1.5JSP、ASP测试报告在ASP盛行的今天,JSP在执行效率方面是否有优势?下面是第三方的测试数据:首先测试的是JSP,测试采用20000*20000次循环运算,该程序只用了不到3秒的时间就运行结束了。下一步测试的是ASP,测试采用20000*20000次循环运算,运行时间竟然达到6分零7秒另外,数据库的链接速度也是影响浏览速度的重要环节,接下来我们又对数据库链接做了测试。测试程序在此省略.对Oracle8进行1000次Insert,Update,Select,Delcte操作,JSP需要13秒,ASP需要73秒.1.6JSP技术前景目前在国内PHP与ASP应用最为广泛。而JSP由于是一种较新的技术,国内采用的较少。但在国外,JSP已经是比较流行的一种技术,尤其是电子商务类的网站,多采用JSP。三者中,JSP应该是未来发展的趋势。世界上一些大的电子商务解决方案提供商都采用JSP/Servlet方案。比较出名的如IBM的E-business,它的核心是采用JSP/Servlet的WebSphere。它们都是通过CGI来提供支持的。但去年10月后它推出了Enfinity,一个采用JSP/Servlet的电子商务ApplicationServer,而且声言不再开发传统软件。本章小结JSP是Sun公司推出的一种Web开发技术。JSP网页由HTML标记、JSP标签和Java程序片段组成。与ASP相比,JSP在可移植性,平台独立性,及程序性能具有更大的优越性。世界上一些大的电子商务解决方案提供商都采用JSP/Servlet技术,JSP应该是未来发展的趋势。心得体会(1)JSP与ASP比较:JSP技术比ASP技术要复杂得多,功能也相对强大。但也基于这个原因ASP相对JSP要容易上手,运行速度也比较快。考虑到成本问题,一般开发中小型网站多数选用ASP,但开发的是大型或是超大型,JSP的优势就比较明显了。(2)Java语言与JavaScript脚本语言的区别:Java与JavaScript分别是两个公司开发的两个不同的产品,作用与用途不一样。Java是Sun公司推出的面向对象的程序设计语言;JavaScript是Netscape公司为扩展NetscapeNavigator功能的产品。简单来说,JavaScript不是Java的子集。