JSP
JSP(JavaServer Pages)是由Sun Microsystems公司倡导、许多公司参与一起建立的一种动态网页技术标准。JSP技术有点类似ASP技术,它是在传统的网页HTML文件(*.htm,*.html)中插入Java程序段(Scriptlet)和JSP标记(tag),从而形成JSP文件(*.jsp)。
用JSP开发的Web应用是跨平台的,即能在Linux下运行,也能在其他操作系统上运行。
JSP技术使用Java编程语言编写类XML的tags和scriptlets,来封装产生动态网页的处理逻辑。网页还能通过tags和scriptlets访问存在于服务端的资源的应用逻辑。JSP将网页逻辑与网页设计和显示分离,支持可重用的基于组件的设计,使基于Web的应用程序的开发变得迅速和容易。
Web服务器在遇到访问JSP网页的请求时,首先执行其中的程序段,然后将执行结果连同JSP文件中的HTML代码一起返回给客户。插入的Java程序段可以操作数据库、重新定向网页等,以实现建立动态网页所需要的功能。
JSP与Java Servlet一样,是在服务器端执行的,通常返回该客户端的就是一个HTML文本,因此客户端只要有浏览器就能浏览。
JSP的1.0规范的最后版本是1999年9月推出的,12月又推出了1.1规范。目前较新的是JSP1.2规范,JSP2.0规范的征求意见稿也已出台。
JSP页面由HTML代码和嵌入其中的Java代码所组成。服务器在页面被客户端请求以后对这些Java代码进行处理,然后将生成的HTML页面返回给客户端的浏览器。Java Servlet 是JSP的技术基础,而且大型的Web应用程序的开发需要Java Servlet和JSP配合才能完成。JSP具备了Java技术的简单易用,完全的面向对象,具有平台无关性且安全可靠,主要面向因特网的所有特点。
1. JSP技术的强势
(1)一次编写,到处运行。在这一点上Java比PHP更出色,除了系统之外,代码不用做任何更改。
(2)系统的多平台支持。基本上可以在所有平台上的任意环境中开发,在任意环境中进行系统部署,在任意环境中扩展。相比ASP/PHP的局限性是现而易见的。
(3)强大的可伸缩性。从只有一个小的Jar文件就可以运行Servlet/JSP,到由多台服务器进行集群和负载均衡,到多台Application进行事务处理,消息处理,一台服务器到无数台服务器,Java显示了一个巨大的生命力。
(4)多样化和功能强大的开发工具支持。这一点与ASP很像,Java已经有了许多非常优秀的开发工具,而且许多可以免费得到,并且其中许多已经可以顺利的运行于多种平台之下。
2. JSP技术的弱势
(1) 与ASP一样,Java的一些优势正是它致命的问题所在。正是由于为了跨平台的功能,为了极度的伸缩能力,所以极大的增加了产品的复杂性。
(2) Java的运行速度是用class常驻内存来完成的,所以它在一些情况下所使用的内存比起用户数量来说确实是“最低性能价格比”了。从另一方面,它还需要硬盘空间来储存一系列的.java文件和.class文件,以及对应的版本文件。
JSP技术是用JAVA语言作为脚本语言的,JSP网页为整个服务器端的JAVA库单元提供了一个接口来服务于HTTP的应用程序。
JSP(JavaServer Pages)是由Sun Microsystems公司倡导、许多公司参与一起建立的一种动态网页技术标准。在传统的网页HTML文件(*.htm,*.html)中加入Java程序片段(Scriptlet)和JSP标记(tag),就构成了JSP网页(*.jsp)。
JSP文件不能由浏览器直接运行,而需由web服务器解释执行,Web服务器在遇到访问JSP网页的请求时,首先执行其中的程序片段,然后将执行结果以HTML格式返回给客户。程序片段可以操作数据库、重新定向网页等等,这就是建立动态网站所需要的功能。所有程序操作都在服务器端执行,网络上传送给客户端的仅是得到的结果,即HTML文件。
JSP(JavaServer Pages)是由Sun Microsystems公司倡导、许多公司参与一起建立的一种动态网页技术标准。JSP技术有点类似ASP技术,它是在传统的网页HTML文件(*.htm,*.html)中插入Java程序段(Scriptlet)和JSP标记(tag),从而形成JSP文件(*.jsp)。
Web服务器在遇到访问JSP网页的请求时,首先执行其中的程序段,然后将执行结果连同JSP文件中的HTML代码一起返回给客户。插入的Java程序段可以操作数据库、重新定向网页等,以实现建立动态网页所需要的功能。
JSP与Java Servlet一样,是在服务器端执行的,通常返回该客户端的就是一个HTML文本,因此客户端只要有浏览器就能浏览。
JSP的1.0规范的最后版本是1999年9月推出的,12月又推出了1.1规范。目前较新的是JSP1.2规范,JSP2.0规范的征求意见稿也已出台。
JSP的开发和运行环境
对于JDK1.1和JDK1.2以上(Java 2)标准版的用户,Sun公司提供了JSWDK软件包用于开发和调试Servlet和JSP程序。JSWDK是JavaServer Web Development Kit的缩写,同时支持Servlet和JSP,可从Sun公司的站点免费下载。对于JDK1.3版本以上的用户,还可选择JWSDP(Java Web Services Developer Pack) 软件,功能更强一些。对于J2EE(Java 2企业版)的用户,不必下载这些软件,因为J2EE直接支持JSP。
JSWDK程序可以在本地机上启动一个模拟的Web服务器,通过它可以调试JSP程序,它相当于一个开发环境,通常开发完成的JSP程序最后要放到支持JSP的Web服务器上运行。
在JSWDK软件中,已为Sample程序定义了放置JSP及对应的Bean程序的物理目录和URL对应的虚拟目录,以Windows下的JSWDK为例,JSP程序通常可放置在以下两个物理路径对应的目录及其子目录中,其中<jswdk>为JSWDK软件的安装目录。
虚拟路径(URL) 物理路径
http://localhost:8080/ <jswdk>\webpages\
http://localhost:8080/examples/jsp/ <jswdk>\examples\jsp\
习惯上,对不带JavaBean的JSP程序,常直接放在选定的目录(上述两个物理路径之一)下,而对带JavaBean的JSP程序, JSP程序与Bean程序分别有自己的目录,如Sample程序对应的Bean程序存放在如下目录:
<jswdk>\examples\WEB-INF\jsp\beans\
虽然用户也可通过配置文件自己设置JSP程序和Bean程序的运行目录,但为方便起见,用户可在上述目录下开一个专门的子目录存放自己的Bean程序,该子目录名常与JavaBean所在的包名相同。如有一个名为jdbctest.jsp的含JavaBean的程序,若该程序所属的包名为jdbc,则JSP程序可放在目录<jswdk>\examples\jsp\jdbc\下,而对应的Bean程序则放在目录<jswdk>\examples\WEB-INF\jsp\beans\jdbc\下,并可使用URL:
http://localhost:8080/examples/jsp/jdbc/jdbctest.jsp来访问它。
事实上,只要在JSWDK软件中作相应的设置,JSP程序也能存放在其他目录中,只要JSP引擎能找到它。
JSP程序能在多种平台上运行,大多数JSP引擎在JSP文件被第一次访问时直接将它编译成Servlet并存放在内存中。所以用户在第一次访问某个JSP程序时会感觉响应较慢,但第二次及以后的访问就会快得多。由于JSP技术是建立在servlet基础上的,多数较新版本的支持servlet的软件也支持JSP。如NT的IIS上有JRUN, Apache上有Jserv和Tomcat。新版本的Oracle Application Server也支持JSP技术。