教学材料《JSP设计与开发》-第1章 JSP概述_第1页
教学材料《JSP设计与开发》-第1章 JSP概述_第2页
教学材料《JSP设计与开发》-第1章 JSP概述_第3页
教学材料《JSP设计与开发》-第1章 JSP概述_第4页
教学材料《JSP设计与开发》-第1章 JSP概述_第5页
已阅读5页,还剩70页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

第1章JSP概述学习要点Web程序设计模式与运行原理JSP页面与JSP运行原理Jsp运行环境的配置集成开发环境简介1.1Web程序设计模式与运行原理Web程序或网站的运行方式不同于单机或C/S模式的Windows应用程序。我们主要从Web服务、浏览器/服务器模式与动态网页技术三个方面作简要介绍。1.1.1Web服务器与动态网页1.1.2浏览器/服务器结构及其优点1.1.3JSP与其他Web开发技术1.1.1Web服务器与动态网页上网浏览网页的内容是存在哪里的?答案:服务器上。什么是服务器?所谓服务器就是网络中的一台主机,由于它提供Web、FTP等网络服务,因此称其为服务器。1.1.1Web服务器与动态网页服务器和浏览器是如何通信的?当用户在地址栏中输入新浪网地址(URL,即“统一资源定位符”)的时候,浏览器会向新浪网的服务器发送HTTP请求,这个请求使用HTTP协议,其中包括请求的主机名、HTTP版本号等信息。服务器在收到请求信息后,将回复的信息(一般是文字、图片等网页信息,也就是HTML页面)准备好,再通过网络发回给客户端浏览器。客户端的浏览器在接收到服务器传回的信息后,将其解释并显示在浏览器的窗口中,这样用户就可以进行浏览了。图1.1浏览器和服务器之间的通信过程发送HTTP请求浏览网页将内容以HTTP编码的形式返回

请求响应浏览器服务器服务器端的响应过程根据响应的内容在服务器方存放的形式来区分存放的网页为静态HTML网页文件,服务器就会原封不动地返回网页的内容。存放的是动态网页,如JSP、ASP、ASP.NET等文件,则服务器会执行动态网页,执行的结果是生成一个HTML文件,然后再将这个HTML文件发送给客户端浏览器,客户浏览器将其解释为用户见到的页面。1.1.1Web服务器与动态网页动态网页和静态网页的根本区别服务器端返回的HTML文件是事先存储好的还是由动态网页程序生成的。1.1.1Web服务器与动态网页静态网页与动态网页静态网页文件里只有HTML标记,没有程序代码,网页的内容是事先写好,存放在服务器上的;动态网页文件不仅含有HTML标记,并且还含有程序代码,当用户发出请求时,服务器由动态网页程序即时生成HTML文件。动态网页能够根据不同的时间、不同的用户生成不同的HTML文件,显示不同的内容。1.1.2浏览器/服务器结构及其优点软件架构分类“客户/服务器”(即Client/Server,简写为C/S)模式。“浏览器/服务器”(即Browser/Server,简写为B/S)模式。C/S模式什么是C/S模式?编写的软件分为客户端和服务器端两部分,需要分别在客户机和服务器上进行安装。优点:在用户数据录入等方面很有优势,也降低了系统的通信开销。缺点:开发和维护成本较高,可移植性较差等。B/S模式什么是B/S模式?程序员可以只编写运行在服务器上的软件,浏览器代替C/S模式中的客户端软件,客户通过浏览器与服务器端软件进行交互并得到运行结果。B/S模式主要是利用了不断成熟的WWW浏览器技术,结合动态网站制作技术,通过通用浏览器实现了原来需要复杂的专用软件才能实现的强大功能,节约了开发成本,是一种全新的软件系统构造技术。随着互联网络的不断发展,B/S架构已经成为当今应用软件的首选体系结构。B/S模式的优点开发、维护成本较低可移植性高用户界面统一1.1.3JSP与其他Web开发技术哪些语言和技术可用于B/S模式的Web应用程序开发?目前使用较多的技术有:JSP、ASP、ASP.NET、PHP等JSPJSP全称为JavaServerPages。是Sun公司倡导、多家公司参与,1999年提出的一种Web服务技术标准。它的主要的编程脚本为Java语言,同时还支持JavaBeans/Servlet等技术,利用这些技术可以建立安全、跨平台的Web应用程序。JSP技术的优点(1)跨平台性由于JSP的脚本语言是Java语言,因此它具有Java语言的一切特性。同时Jsp也支持现在的大部分平台,拥有“一次编写,到促运行”的特点。(2)执行效率高

当JSP第一次被请求时,JSP页面转换成Servlet,然后被编译成*.class文件,以后(除非页面有改动或Web服务器被重新启动)再有客户请求该JSP页面时,JSP页面不被重新编译,而是直接执行已编译好的*.class文件,因此执行效率高。JSP技术的优点(3)可重用性可重用的、跨平台的JavaBeans和EJB(EnterpriseJavaBeans)组件,为JSP程序的开发提供了方便。例如,用户可以将复杂的处理程序(如对数据库的操作)封装到组件中,在开发中可以多次使用这些组件,提高了组件的重用性。(4)将内容的生成和显示进行分离使用JSP技术,Web页面开发人员可以使用HTML或者XML标记来设计和格式化最终页面。生成动态内容的程序代码封装在JavaBean组件、EJB组件或JSP脚本段中。在最终页面中使用JSP标记或脚本将JavaBean组件中的动态内容引入。这样,可以有效地将内容生成和页面显示分离,使页面的设计人员和编程人员可以同步进行工作,也可以保护程序的关键代码。ASPASP是ActiveServerPages的缩写,是微软在早期推出的动态网页制作结束,包含在IIS(Internet信息服务)中,是一种服务器端的脚本编写环境,使用它可以创建和运行动态、交互的Web服务器应用程序。在动态网页技术发展的早期,ASP是绝对的主流技术,但是它也存在着许多缺陷:由于ASP的核心是脚本语言,决定了它的先天不足:它无法进行像传统编程语言那样的底层操作;由于ASP通过解释执行代码,因此运行效率较低;同时由于脚本代码与HTML代码混在一起,不便于开发人员进行管理和维护。随着技术的发展ASP的辉煌已经成为过去,微软也已经不再对ASP提供技术支持和更新,ASP技术目前处在被淘汰的边缘。PHPPHP从语法和编写方式上来看与ASP类似,是完全免费的,最早是一个小开放源码的软件,随着越来越多的人意识到它的实用性而逐渐发展起来。RasmusLerdorf在1994年发布了PHP的第一个版本。从那时起它就飞速发展,在原始发行版上经过无数的改进和完善,现在已经发展到5.0版。PHP+MySQL+Linux的组合是最常见的,因为他们都可以免费获得。但是PHP的弱点也是很明显的,例如PHP不支持真正意义上的面向对象编程,接口支持不统一,缺乏正规支持,不支持多层结构和分布式计算等。ASP.NETASP.NET是微软继ASP后推出的全新的动态网页制作技术,目前最新版本为.NET3.5。在性能上,ASP.NET比ASP强很多,与PHP相比,也存在明显的优势。ASP.NET可以使用C#、VB.NET、VisualJ#等语言来开发,程序开发人员可以选择自己习惯或熟悉的语言进行开发。ASP.NET依托.NET平台先进而强大的功能,极大的简化了编程人员的工作量,使得Web应用程序的开发更加方便、快捷,同时也使得程序的功能更加强大,是JSP技术的有力竞争对手。1.2JSP页面与JSP运行原理1.2.1案例一:第一个JSP页面1.2.2JSP运行原理1.2.3JSP、JavaBean和JavaServlet的关系1.2.1案例一:第一个JSP页面JSP页面是由普通的HTML标记和JSP标记,以及通过“<%”、“%>”标记加入的Java程序片段组成的页面。JSP页面按文本文件保存,文件名要符合JSP标识符的规定,即文件名可以是字母、数字、下划线或美元符号组成,并且第一个字符不能是数字,文件扩展名为jsp。用户可以用记事本或其他文本编辑工具如EditPlus来编辑JSP文件,文件保存的编码选择ANSI。1.2.1案例一:第一个JSP页面【案例功能】向客户端输出“这是我的第一个JSP程序”页面【案例目标】掌握JSP页面的基本框架结构【案例要点】HTML标识、JSP语言【案例步骤】(1)新建一个文本文件,起名myfirst,并将后缀名改为.jsp(2)编写myfirst.jsp源代码文件。(3)将myfirst.jsp文件保存到Tomcat6.0安装目录下的webapps\ROOT子目录中,本教材Tomcat6.0的安装目录为D:\ProgramFiles\ApacheSoftwareFoundation\Tomcat6.0。则页面保存目录为D:\ProgramFiles\ApacheSoftwareFoundation\Tomcat6.0\webapps\ROOT。【源码】myfirst.jsp<%@pagecontentType=”text/html;charset=GB2312”%><html><head><title>这是我的第一个JSP程序</title></head><bodybgcolor=cyan><h2>这是我的第一个JSP程序</h2><h3><%out.println(“世界你好!”);

%></h3></body></html>所有粗黑体标识都是HTML标签

在<%...%>中嵌入的是JSP源码页面运行结果1.2.2JSP运行原理用户在客户端浏览器中输入:8080/myfirst.jsp,就会对Web服务器上的myfirst.jsp页面产生请求。当服务器上的myfirst.jsp页面第一次被请求时,JSP引擎首先转译JSP页面文件,形成一个Java文件(本质上是一个JavaServlet的Java文件,可以简单地将其理解为执行在服务器端的Java小程序),这个ServletJava文件的文件名是myfirst_jsp.java,存储在Tomcat安装目录的work\Catalina\localhost\_\org\apache\jsp子目录中。1.2.2JSP运行原理然后JSP引擎调用Java编译器编译这个文件,形成Java的字节码文件myfirst_jsp.class,存放在相同的目录中,编译完成之后,JSP引擎就会执行myfirst._jsp.class字节码文件,响应客户的请求,执行myfirst_jsp.class的结果是发送给客户端一个HTML页面。当这个页面再次被请求时,JSP引擎将直接执行这个编译了的字节码文件来响应客户的请求。当多个用户请求同一个JSP页面时,Tomcat服务器为每个客户启动一个线程,该线程负责执行常住内存的字节码文件来响应客户请求。1.2.2JSP运行原理图浏览器1浏览器2浏览器3客户线程客户线程客户线程Tomcat服务器JSP引擎执行JSP对应字节码首次请求转译编译JSP页面JSP对应Java文件验证tomcat的工作过程在Tomcat安装目录的work\Catalina\localhost\_\org\apache\jsp子目录中,用记事本打开myfirst_jsp.java文件。将运行的页面文件另存为网页,保存在本地盘,用记事本打开该网页,观看其代码。比较这两个文件Java文件中,可以看到out.write(“…”)用于向客户端输出HTML代码,JSP页面对应Java文字码文件的主要工作如下。把JSP页面中的HTML标记发给客户端浏览器。负责处理JSP页面中的JSP标记,并将处理结果发给客户端浏览器。负责执行“<%”和“%>”之间的Java程序,并将执行结果发给客户端浏览器。1.2.3JSP、JavaBean和JavaServlet的关系JavaServlet是Java语言的一部分,它提供了一组用于服务器端编程的API。习惯上称使用JavaServletAPI的相关类和方法所编写的Java类为Servlet类,Servlet类生成的对象为Servlet对象。Servlet对象可以运行在配置有JSP运行环境的服务器上,访问服务器的各种资源,这极大地扩展了服务器的功能。1.2.3JSP、JavaBean和JavaServlet的关系JSP(JavaServerPage)是晚于JavaServlet产生的,它是为了克服JavaServlet的缺点,以JavaServlet技术为基础的Web应用开发技术标准。JSP提供了JavaServlet几乎所有的好处,是JavaServlet技术的成功应用,不过JSP只是JavaServlet技术的一部分,而不是JavaServlet的全部。JSP可以让JSP标记、Java语言代码嵌入到HTML语句中,这样就大大的简化和方便了网页的设计和修改,但JSP页面最终会被编译成Servlet并执行,来响应客户端的请求。1.2.3JSP、JavaBean和JavaServlet的关系JavaBean被Sun公司定义为一个可重用的软件组件。实际上JavaBean就是一种Java类,通过封装属性和方法成为具有某种业务逻辑处理能力的类,它一般负责Web应用系统的业务逻辑处理部分。JavaBean类实例化的对象简称为Bean。JSP提供访问JavaBean组件的JSP动作标记。JSP动作标记简单、方便,有效地分离了JSP页面的表示部分和业务逻辑、数据处理部分,因此使程序设计人员和页面设计人员可以同时工作。较小规模的Web应用可以采用JSP+JavaBean模式。在JSP+JavaBean模式中,JSP负责页面的现实和页面预处理和跳转控制,JavaBean负责业务逻辑和数据处理。对于模式较大的Web应用,就需要采用JSP+JavaBean+Servlet模式。在JSP+JavaBean+Servlet模式中,JSP负责页面处理(View),JavaBean负责业务逻辑和数据处理(Model),Servlet负责预处理和分发页面的请求(Control)。1.3搭建JSP运行环境1.3.1安装和配置JDK1.3.2安装配置Tomcat1.3.3Web服务目录设置1.3.1安装和配置JDKSun公司提供了一个免费的Java软件开发工具包JDK(JavaDevelopmentKit),该工具包含了编译、运行及调试Java程序所需要的工具,此外还提供了大量的基础类库,供编写程序使用,它是开发Java程序的基础。Sun公司将JDK1.2以后版本通称为Java2。如后来推出的1.3、1.4、1.5及1.6(又称6.0)等版本都属于Java2范畴。现在JDK通常又称为J2SDK(Java2SoftwareDevelopmentKit).JDK的安装Sun公司为不同的操作系统平台,如Windows、Unix/Linux等提供了相应的Java开发包。用户可到Sun公司站点下载最新的适应于相应操作系统的开发包。本书中使用Windows操作系统环境下的Jdk1.6.0作为所有程序的开发环境。本书中JDK安装目录为D:\ProgramFiles\Java。安装完成后,在D:\ProgramFiles\Java目录中会有jdk1.6.0和jre1.6.0两个子目录,jdk1.6.0为Java开发工具目录,jre1.6.0为Java运行环境目录。JDK的配置安装完JDK后,需要在Windows操作系统中为JDK设置几个环境变量,以便系统能够自动查找JDK的命令和类库。对于WindowsXP/2000,单击“我的电脑”,弹出快捷菜单,从中选择“属性”命令,弹出“系统属性”对话框,单击该对话框的“高级”标签,然后单击“环境变量”按钮,弹出“环境变量”设置对话框,JDK的配置分别添加如下的环境变量。变量名CLASSPATH,变量值为D:\ProgramFiles\Java\jre1.6.0\bin\rt.jar.;(见图1.3);变量名PATH,变量值为D:\ProgramFiles\Java\bin。测试JDK开始→运行→cmd→javac→回车→出现帮助文字→正确1.3.2安装配置Tomcat自1999年JSP发布以来,到目前为止,出现了各种各样的JSP引擎。如Tomcat、J2EE、WebLogic、WebSphere等。一般将安装了JSP引擎的计算机称为一个支持JSP的Web服务器,它负责运行JSP程序,并将执行结果返回给浏览器。Tomcat是一个免费的开源JSP引擎,也称为JakartaTomcatWeb服务器。目前Tomcat能和大多数主流Web服务器一起高效地工作。下载Tomcat用户可以到/

站点免费下载Tomcat6.0,在主页面中的Download里选择Tomcat6.x,然后在BinaryDistributions里的Core中选择zip(pgp,md5)、tar.gz(pgp,md5)或WindowsServiceInstaller(pgp,md5)。本书下载的是WindowsServiceInstaller(pgp,md5),文件名为apache-tomcat-6.0.16.exe。apache-tomcat-6.0.16.exe是专门为Windows开发的Tomcat服务器。安装Tomcat双击“apache-tomcat-6.0.16.exe”,出现安装向导,双击Next按钮,出现“授权”界面,接受授权协议后,用户可以选择Normal、Minimun、Custom和Full安装形式,本书选择“Full”安装模式,如图1.4所示。单击Next按钮,默认安装于C:\ProgramFiles\ApacheSoftwareFoundation\Tomcat6.0,单击Next按钮,默认HTTP服务端口8080、登录用户名为“Admin”、密码为空,然后选择默认Java的JRE安装目录。如图1.5所示,本书的JRE安装目录为D:\ProgramFiles\Java\jre1.6.0

单击Install按钮,开始Tomcat的安装。安装完成后,在“开始”

“程序”菜单中会出现安装程序创建的AppacheTomcat6.0菜单组,产生的目录结构如图1.6所示。测试安装是否成功(运行测试页)选择“开始”

“程序”

“ApacheTomcat6.0”菜单中的MonitorTomcat命令,在任务栏中出现ApacheTomcat系统托盘,右击托盘,在弹出的快捷菜单中选择StartService命令,即可启动Tomcat6.0服务器。Tomcat服务器占用的默认端口是8080,如果Tomcat使用的端口已经被占用,则Tomcat将无法启动。打开IE浏览器或MozillaFirefox浏览器,在浏览器地址栏中输入http://localhost:8080并回车,如果浏览器中出现如图1.7所示的页面,则说明用户的Tomcat已经正确安装。关于端口8080是Tomcat服务器默认端口。用户可以通过修改Tomcat6.0安装目录下conf子目录中的server.xml配置未见来更改端口号。用记事本打开server.xml文件,找到下列内容部分:<Connectorport="8080"protocol="HTTP/1.1"connectionTimeout="20000"redirectPort="8443"/>将port=“8080”更改为port=“80”,保存文件后并重新启动Tomcat服务器即可。此时,用户在浏览器中输入url地址时可省略端口号,例如输入,即可看到如图1.7所示的测试页面。本教材使用默认的8080端口1.3.3Web服务目录设置从用户的角度看,Web服务目录就是用户浏览器能够访问的页面所在目录。如果要发布网页,必须将编写好的JSP页面放到Web服务器的某个Web服务目录中。1、根目录从Web服务器和客户浏览器两个角度去分析:服务器的角度:Tomcat6.0安装目录中的webapps\ROOT子目录称为Tomcat6.0Web服务的根目录。此处根目录在服务器上的物理路径为D:\ProgramFiles\ApacheSoftwareFoundation\Tomcat6.0\webapps\ROOT。客户浏览器角度地址栏中键入的URL“协议://ip地址或域名:端口号/目录/页面.jsp”中,“端口号”后面的“/”就是客户端看到的根目录。用户访问Web服务器根目录中的JSP页面时,在客户端浏览器中输入URL地址,只需键入http://ip地址或域名:端口号/页面名称即可。例如在后面的例子中,访问根目录下的index.jsp页面时只需要在地址栏中键入:8080/index.jsp。而index.jsp页面保存位置就是Web服务器的根目录。2、Web服务子目录在Tomcat服务器安装目录中的webapps子目录下,除了ROOT子目录外,还有docs、examples、manager等子目录,这些子目录称为Web服务子目录。用户可以在客户浏览器中访问这些Web服务子目录中的页面,只需键入http://ip地址或域名:端口号/页面名称即可,例如访问webapps\examples目录中的index.html页面,在浏览器地址栏中输入:8080/example/index.html,URL中的examples为Web服务子目录。除了Tomcat安装时创建的Web服务子目录外,用户可以在webapps目录中创建新的Web服务子目录。例如在webapps目录中创建myapp子目录,将自己编写的myfirst.jsp文件保存在myapp子目录中,在客户浏览器地址栏中输入:8080/myapp/myfirst.jsp,即可访问myapp服务目录下的myfirst.jsp页面。3、建立虚拟Web服务目录除了在安装目录中的webapps目录下创建Web服务子目录外,用户还可以将服务器计算机中的某个目录指定为Web服务子目录,并为其设置虚拟Web服务子目录名称,将实际的目录物理路径隐藏,用户只能通过虚拟目录访问该Web服务子目录。建立虚拟Web服务目录的方法建立虚拟Web服务目录,可通过修改Tomcat安装目录下的conf子目录中的server.xml配置文件来实现。例如,将E:\programJsp\ch1指定为新的Web服务子目录,虚拟目录名称为ch1。用户首先在Tomcat服务器的E盘创建programJsp\ch1目录,然后用文本编辑器打开server.xml文件,在<Host>…</Host>节之间加入如下内容:<Contextpath="ch1"docBase="E:\programJsp\ch1"debug=”0”reloadable=”true”/>

上面代码中的path=”/ch1”为虚拟目录名称,docBase=”E:\programJsp\ch1”为Web服务子目录的物理路径。保存后重新启动Tomcat服务器。4、相对服务目录Web服务目录下的子目录称为Web服务目录下的相对服务目录。例如在根目录ROOT中建立了一个image子目录,image就是根目录下的相对服务目录,访问image的URL地址为:8080/image。在虚拟目录ch1中建立子目录image,image就是虚拟目录ch1下的相对服务目录,访问它的URL为:8080/ch1/image。1.4集成开发环境介绍比较常见的开发环境有Eclipse/MyEclipse、JBuilder、NetBeans、WebSphere等开发环境。1.4.1开源的Eclipse1.4.2MyEclipse1.4.3项目的加载与部署1.4.1开源的EclipseEclipse最初是IBM公司的一个软件产品,现在IBM已经把出巨资开发的Eclipse作为一个开源项目捐给了开源组织E,到目前为止,Eclipse的成熟版本为6.0.1版。Eclipse6.0.1简介Eclipse6.0.1是一个通用的工具平台。它提供了功能丰富的开发环境,允许开发者高效地创建一些工具并集成到Eclipse平台上来。Eclipse的设计思想是:一切皆为插件。Eclipse核心非常小,其他所有的功能都以插件的形式附加到这个核心之上。Eclipse的插件是动态调用的,也就是插件被用时调入,不再被使用时则适当时候自动清除。用户可以去Eclipse的官网上免费下载Eclipse工具包,也可以使用Google搜索工具搜索下载Eclipse工具包。常用的Eclipse有两种版本,Release版式稳定版本,StableBuilds版本比较稳定。Eclipse的安装非常简单,它属于纯绿色软件,只需将安装文件解压就可以运行Eclipse。现在最新的JBuilder、WebSphere、MyEclipse等开发工具都是将Eclipse作为集成框架基础开发而成的。1.4.2MyEclipseMyEclipse企业级工作平台(MyEclipseEnterpriseWorkbench,简称MyEclipse)是对EclipseIDE的扩展,是J2EE开发插件的综合体,是功能丰富的J2EE集成开发环境。它包括了完备的编码、调试、测试和发布功能,完整支持HTML、JSP、Struts、JSF、CSS、JavaScript、SQL、Hibernate等。用户使用它可以在数据库和J2EE的开发、发布,以及应用程

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论