第1章JSP概述
合集下载
相关主题
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
所谓的个性化技术
31
JSP和其它动态网站开发技术 动态网页技术:CGI ASP PHP JSP • CGI:Common Gateway Interface • ASP:Active Server Page • PHP:Hypertext Preprocessor • JSP:Java Server Page
– 典型的系统:网上银行、网上书店、Blog等等
8
9
1.2 企业应用开发架构
• 在构建企业级应用的时候,通常需要大量的代码,而且这些代码一般分布在不同的计算 机上,划分代码运行在不同计算机上的理论就是多层设计理论。
• 企业级应用系统通常分成 – 两层 – 三层 – N层架构。
两层架构
• 传统的两层应用包括用户接口和后台程序,后台程序通常是一个数据库,用户接口直接 同数据库进行对话。实现上,通常使用JSP、ASP或者VB等技术编写这类软件,结构如 图
20
➢ JSP的特点: ➢ 内嵌在HTML中:以较为简单直接的方式将程序代码内嵌在HTML中,降低了程序设计的
难度。 ➢ 丰富的内建对象:JSP的规格中包含相关的对象、卷标与指令,提供了设计主从式网络程
序的功能,简化了编写servlet程序的过程。 ➢ 整合Java平台:JSP程序中可运用Java所提供的各类包,以这些包为基础,扩充了JSP程
<h3>
<%
out.println("JSP Hello World!");
%>
</h3>
用“<% %>”嵌入动态部分
</body>
</html>
16
JSP是一种动态网页技术标准。可以将网页中的动态部分和静态的HTML相分离。您可以使用平 常得心应手的 工具并按照平常的方式来书写HTML语句。然后,将动态部分用特殊的标记嵌 入即可,这些标记常常以“<%”开始并以“%>”结束
在Eclipse+tomcat环境下的运行效果如下图所示:
17
18
JSP文件的主要结构:
<%@ page contentType="text/html;charset=gb2312" %> <%@ page import="java.util.*" %> ... <HTML> <BODY> 其他 HTML 语言 <% 符合JAVA 语法的 JAVA 语句 %> 其他 HTML 语言 </BODY> </HTML>
19
• JSP技术使用Java编程语言编写类XML的tags和scriptlets,来封装产生动态网页的处理逻辑。 网页还能通过tags和scriptlets访问存在于服务端的资源的应用逻辑。JSP将网页逻辑与网页设 计和显示分离,支持可重用的基于组件的设计,使基于Web的应用程序的开发变得迅速和容 易。
Web 浏览器
request
Servlet response
Web 容器
EJB 27
• JSP生成的Servlet的生命周期
调用 Init方法 进行初始化设置
创建Servlet 实例
加载Servlet 类
调用 service 方法处理客户端请求
ServletConfig
调用 方法 destroy 销毁Servlet实例 并释放占用资源
– 服务器通常采用高性能的PC、工作站或小型机,并采用大型数据库系统,如Oracle、Sybase、 Informix或 SQL Server。客户端需要安装专用的客户端软件。
– 这种模式我们也通常成为胖客户端模式。 – 典型的系统:QQ、MSN
7
B/S结构编程体系 • 浏览器/服务器(Browser/Server,B/S)模式
22
接受 请求
JS P 、 S erv let 最新
否
解 析 JSP
是
JS P S erv let 已加载
否
生 成 JSP S erv let源
加 载 S erv let 是
编 译 JSP S erv let
生成 响应
发送
23
响应
客户端浏览器
JSP调用
查找对应的JSP文件
是否存在 Y
是否是修改或创建 后第一次调用
29
• Servlet是一种独立于平台和协议的服务器端的Java应用程序,可以生成动态的Web页面 。 它担当Web浏览器或其他HTTP客户程序发出请求,与HTTP服务器上的数据库或应 用程序之间的中间层。
• Servlet是位于Web 服务器内部的服务器端的Java应用程序,与传统的从命令行启动的 Java应用程序不同,Servlet由Web服务器进行加载,该Web服务器必须包含支持Servlet的 Java虚拟机。
30
JSP和其它动态网站开发技术 • 随着Internet和电子商务等应用的发展,动态网页技术诞生了。 • 动态网页和网页上的动画根本不是一回事,它有以下几个特点:
– 交互性:即网页会根据用户的要求和选择而动态改变和响应。 – 自动更新:即无需手动更新HTML文档,自动生成新的页面,这可大大节省工作量。 – 因时因人而变:即当不同的时间、不同的用户访问同一网址时会产生不同的页面,这就是
商 务 逻 辑 层
数 据 库 层 三 层 应 用 架 构
N层架构
• 如果某个应用超过三个独立的代码层,那么这个应用叫做N应用,就不再叫四层或者五 层等名称,而是统称为N层。如图
用 户
商 务 逻 辑 层
表 示 逻 辑 层
服 务 层 数 据 库 层 N层 应 用 架 构
开发架构比较
• 两层架构的优点是开发过程比较简单,利用服务器端的程序直接访问数据库,部署起来比 较方便。缺点是程序代码维护起来比较困难,程序执行的效率比较低,用户容量比较少。
第1章JSP概述
课程的地位、先修课程 • 本课程是一门专业必修课程,它主要讲授如何使用JSP程序设计的原理、方法和技术开发
基于B/S架构的动态网站。 • 先修课程:要求学习者具备一定的Java程序设计基础,因此必须先修《Java程序设计》;
该课程需要操作数据库,因此必须先修《数据库原理》;另外由于牵涉网页的设计所以先 修课还需要《网页设计》。
序的本身的处理范围与能力。
21
JSP技术原理 • 从本质上说,JSP是Servlet API的一个扩展。事实上,JSP在处理请求之前都要编译成
Servlet,所以它具有Servlet的所有优势,包括访问Java API。简单的说,一个JSP页面就是 包含了能够生成动态内容的可执行应用代码的HTML网页。
• Web服务器在遇到访问JSP网页的请求时,首先执行其中的程序段,然后将执行结果连同JSP 文件中的HTML代码一起返回给客户。插入的Java程序段可以操作数据库、重新定向网页等, 以实现建立动态网页所需要的功能。
• JSP与Java Servlet一样,是在服务器端执行的,通常返回该客户端的就是一个HTML文本,因 此客户端只要有浏览器就能浏览。
– 客户机上只要安装一个浏览器(Browser),如Netscape Navigator或Internet Explorer,服务器安 装Oracle、Sybase、Informix或 SQL Server等数据库。浏览器通过Web Server 同数据库进行数据 交互。 这种模式,我们通常将其成为瘦客户端模式。
2
课程在专业课程体系中的地位
Java程序设计 数据库原理 网页设计
JSP 项目实训
J2EE程序设计 Ajax程序设计
SSH框架 手机开发
3
• 本章学习目标: – 了解软件编程体系 – 了解企业应用开发架构 – 掌握JSP基本概念 – 掌握JSP的知识体系 – 了解JSP的学习之路
4
1.1 软件编程体系简介 1.2 企业应用开发架构 1.3 JSP概述 1.4 JSP知识体系及学习之路
垃圾回收 28
• Servlet的生命周期: 1.客户端向服务器发出请求,服务器根据客户端的请求,找到相应的Servlet类 2.判断该Servlet是否在内存中加载?若未加载,创建该Servlet实例,调用init()方法完成初始化 操作。若已经加载,转3 3. 调用service()方法对客户端进行相应。等待下一次请求。在Servlet生命周期中,service()方法是 其中的核心。每当客户端向Servlet发出一个请求时,该方法就会被调用,对用户的请求进行处 理,并返回响应。 4.结束,调用destroy()方法。当服务器端不再需要该Servlet的时候,服务器调用destroy()方法卸 载该Servlet,释放Servlet运行时占用的资源。
• 在后续对该页面再次进行请求时,若页面没有进行任何改动,服务器只需直接调用 Class文件执行即可。
• 所以当某个JSP页面第一次被请求时,会有一些延迟,而再次访问时会感觉快了很多。 如果被请求的页面经过修改,服务器将会重新编译这个文件,然后执行。
26
Servlet概念
• Servlet概念 – Servlet是运行在服务器上的Java程序,是一个中间层,主要用来处理客户端请求, 并对客户端请求进行响应,还可以连接应用服务。 – Servlet是在服务器端实现动态网页的一种技术
用户
显示逻wk.baidu.com层
数据库层 两层应用架构
两层应用架构显示逻辑层一般由HTML、JSP、ASP实现,通过JSP和ASP直接和数据 库相连
三层架构
• 在两层应用中,应用程序直接同数据库进行对话。三层结构在用户接口代码和数据库中 间加入了一个附加的逻辑层,通常这个层叫做“商务逻辑层”,如图
用 户
表 示 逻 辑 层
第1章 JSP概述
5
1.1软件编程体系简介 6
C/S结构编程体系 • 客户机/服务器(Client/Server,C/S)模式
– 即客户机和服务器结构。这种体系结构模式是以数据库服务器为中心、以客户机为网络基础、在 信息系统软件支持下的两层结构模型。这种体系结构中,用户操作模块布置在客户机上,数据存 储在服务器上的数据库中。客户机依靠服务器获得所需要的网络资源,而服务器为客户机提供网 络必须的资源。目前大多数信息系统是采用Client/Server结构。
15
什么是JSP
以下是helloWorld.jsp的源代码
<%@ page language="java" contentType="text/html; charset=gbk"%>
<html>
<head>
<title>Hello World!</title> </head>
HTML语句
<body bgcolor="#FFFFFF">
• 三层架构基本解决了两层架构的缺点,将显示部分和逻辑流程控制分开,利用服务器应用 程序实现显示部分,利用商务逻辑层实现程序的流程控制,分层使维护变的方便一些,而 且执行效率也会有所提高,但是相对部署起来就比较困难一些。
• 根据实际的需要,会进一步细化每一层,或者添加一些层,就形成了N层架构,和三层架 构一样,组件化的设计使维护相对容易,但是部署相对困难。
1.3 JSP概述 • JSP(JavaServer Pages)是由Sun Microsystems公司倡导、许多公司参与一起建立的一种动态网页
技术标准。JSP技术有点类似ASP技术,它是在传统的网页HTML文件(*.htm,*.html)中插入Java 程序段(Scriptlet)和JSP标记(tag),从而形成JSP文件(*.jsp)。 • 用JSP开发的Web应用是跨平台的,即能在Linux下运行,也能在其他操作系统上运行。 • JSP的1.0规范的最后版本是1999年9月推出的,12月又推出了1.1规范。此后JSP又经历了几个版 本,最新版本是2003年发布的JSP2.0。本书介绍的技术都是基于JSP2.0规范的。
– 即浏览器服务器结构。它是随着Internet技术的兴起,对C/S结构的一种变化或者改进的结构。在 这种结构下,用户工作界面通过浏览器来实现,极少部分事务逻辑在前端(Browser)实现,主要 事务逻辑在服务器端(Server)实现,形成所谓三层结构。这样就大大简化了客户端电脑载荷,减 轻了系统维护与升级的成本和工作量,降低了用户的总体成本。
Y 调用Jsp Parser将其 编译成SJearvvale源t程文序件
N N
Web服务器
调用JSDK将对应的SJearvalet 程序编译成Servlet字节码
执行(若未载入则先载入) 已有的对应的JavSae字rv节let 码
JSP运行原理 25
• 当服务器第一次接收到对某个页面的请求时,JSP引擎就开始进行上述的处理过程,将 被请求的JSP文件编译成Class文件。
31
JSP和其它动态网站开发技术 动态网页技术:CGI ASP PHP JSP • CGI:Common Gateway Interface • ASP:Active Server Page • PHP:Hypertext Preprocessor • JSP:Java Server Page
– 典型的系统:网上银行、网上书店、Blog等等
8
9
1.2 企业应用开发架构
• 在构建企业级应用的时候,通常需要大量的代码,而且这些代码一般分布在不同的计算 机上,划分代码运行在不同计算机上的理论就是多层设计理论。
• 企业级应用系统通常分成 – 两层 – 三层 – N层架构。
两层架构
• 传统的两层应用包括用户接口和后台程序,后台程序通常是一个数据库,用户接口直接 同数据库进行对话。实现上,通常使用JSP、ASP或者VB等技术编写这类软件,结构如 图
20
➢ JSP的特点: ➢ 内嵌在HTML中:以较为简单直接的方式将程序代码内嵌在HTML中,降低了程序设计的
难度。 ➢ 丰富的内建对象:JSP的规格中包含相关的对象、卷标与指令,提供了设计主从式网络程
序的功能,简化了编写servlet程序的过程。 ➢ 整合Java平台:JSP程序中可运用Java所提供的各类包,以这些包为基础,扩充了JSP程
<h3>
<%
out.println("JSP Hello World!");
%>
</h3>
用“<% %>”嵌入动态部分
</body>
</html>
16
JSP是一种动态网页技术标准。可以将网页中的动态部分和静态的HTML相分离。您可以使用平 常得心应手的 工具并按照平常的方式来书写HTML语句。然后,将动态部分用特殊的标记嵌 入即可,这些标记常常以“<%”开始并以“%>”结束
在Eclipse+tomcat环境下的运行效果如下图所示:
17
18
JSP文件的主要结构:
<%@ page contentType="text/html;charset=gb2312" %> <%@ page import="java.util.*" %> ... <HTML> <BODY> 其他 HTML 语言 <% 符合JAVA 语法的 JAVA 语句 %> 其他 HTML 语言 </BODY> </HTML>
19
• JSP技术使用Java编程语言编写类XML的tags和scriptlets,来封装产生动态网页的处理逻辑。 网页还能通过tags和scriptlets访问存在于服务端的资源的应用逻辑。JSP将网页逻辑与网页设 计和显示分离,支持可重用的基于组件的设计,使基于Web的应用程序的开发变得迅速和容 易。
Web 浏览器
request
Servlet response
Web 容器
EJB 27
• JSP生成的Servlet的生命周期
调用 Init方法 进行初始化设置
创建Servlet 实例
加载Servlet 类
调用 service 方法处理客户端请求
ServletConfig
调用 方法 destroy 销毁Servlet实例 并释放占用资源
– 服务器通常采用高性能的PC、工作站或小型机,并采用大型数据库系统,如Oracle、Sybase、 Informix或 SQL Server。客户端需要安装专用的客户端软件。
– 这种模式我们也通常成为胖客户端模式。 – 典型的系统:QQ、MSN
7
B/S结构编程体系 • 浏览器/服务器(Browser/Server,B/S)模式
22
接受 请求
JS P 、 S erv let 最新
否
解 析 JSP
是
JS P S erv let 已加载
否
生 成 JSP S erv let源
加 载 S erv let 是
编 译 JSP S erv let
生成 响应
发送
23
响应
客户端浏览器
JSP调用
查找对应的JSP文件
是否存在 Y
是否是修改或创建 后第一次调用
29
• Servlet是一种独立于平台和协议的服务器端的Java应用程序,可以生成动态的Web页面 。 它担当Web浏览器或其他HTTP客户程序发出请求,与HTTP服务器上的数据库或应 用程序之间的中间层。
• Servlet是位于Web 服务器内部的服务器端的Java应用程序,与传统的从命令行启动的 Java应用程序不同,Servlet由Web服务器进行加载,该Web服务器必须包含支持Servlet的 Java虚拟机。
30
JSP和其它动态网站开发技术 • 随着Internet和电子商务等应用的发展,动态网页技术诞生了。 • 动态网页和网页上的动画根本不是一回事,它有以下几个特点:
– 交互性:即网页会根据用户的要求和选择而动态改变和响应。 – 自动更新:即无需手动更新HTML文档,自动生成新的页面,这可大大节省工作量。 – 因时因人而变:即当不同的时间、不同的用户访问同一网址时会产生不同的页面,这就是
商 务 逻 辑 层
数 据 库 层 三 层 应 用 架 构
N层架构
• 如果某个应用超过三个独立的代码层,那么这个应用叫做N应用,就不再叫四层或者五 层等名称,而是统称为N层。如图
用 户
商 务 逻 辑 层
表 示 逻 辑 层
服 务 层 数 据 库 层 N层 应 用 架 构
开发架构比较
• 两层架构的优点是开发过程比较简单,利用服务器端的程序直接访问数据库,部署起来比 较方便。缺点是程序代码维护起来比较困难,程序执行的效率比较低,用户容量比较少。
第1章JSP概述
课程的地位、先修课程 • 本课程是一门专业必修课程,它主要讲授如何使用JSP程序设计的原理、方法和技术开发
基于B/S架构的动态网站。 • 先修课程:要求学习者具备一定的Java程序设计基础,因此必须先修《Java程序设计》;
该课程需要操作数据库,因此必须先修《数据库原理》;另外由于牵涉网页的设计所以先 修课还需要《网页设计》。
序的本身的处理范围与能力。
21
JSP技术原理 • 从本质上说,JSP是Servlet API的一个扩展。事实上,JSP在处理请求之前都要编译成
Servlet,所以它具有Servlet的所有优势,包括访问Java API。简单的说,一个JSP页面就是 包含了能够生成动态内容的可执行应用代码的HTML网页。
• Web服务器在遇到访问JSP网页的请求时,首先执行其中的程序段,然后将执行结果连同JSP 文件中的HTML代码一起返回给客户。插入的Java程序段可以操作数据库、重新定向网页等, 以实现建立动态网页所需要的功能。
• JSP与Java Servlet一样,是在服务器端执行的,通常返回该客户端的就是一个HTML文本,因 此客户端只要有浏览器就能浏览。
– 客户机上只要安装一个浏览器(Browser),如Netscape Navigator或Internet Explorer,服务器安 装Oracle、Sybase、Informix或 SQL Server等数据库。浏览器通过Web Server 同数据库进行数据 交互。 这种模式,我们通常将其成为瘦客户端模式。
2
课程在专业课程体系中的地位
Java程序设计 数据库原理 网页设计
JSP 项目实训
J2EE程序设计 Ajax程序设计
SSH框架 手机开发
3
• 本章学习目标: – 了解软件编程体系 – 了解企业应用开发架构 – 掌握JSP基本概念 – 掌握JSP的知识体系 – 了解JSP的学习之路
4
1.1 软件编程体系简介 1.2 企业应用开发架构 1.3 JSP概述 1.4 JSP知识体系及学习之路
垃圾回收 28
• Servlet的生命周期: 1.客户端向服务器发出请求,服务器根据客户端的请求,找到相应的Servlet类 2.判断该Servlet是否在内存中加载?若未加载,创建该Servlet实例,调用init()方法完成初始化 操作。若已经加载,转3 3. 调用service()方法对客户端进行相应。等待下一次请求。在Servlet生命周期中,service()方法是 其中的核心。每当客户端向Servlet发出一个请求时,该方法就会被调用,对用户的请求进行处 理,并返回响应。 4.结束,调用destroy()方法。当服务器端不再需要该Servlet的时候,服务器调用destroy()方法卸 载该Servlet,释放Servlet运行时占用的资源。
• 在后续对该页面再次进行请求时,若页面没有进行任何改动,服务器只需直接调用 Class文件执行即可。
• 所以当某个JSP页面第一次被请求时,会有一些延迟,而再次访问时会感觉快了很多。 如果被请求的页面经过修改,服务器将会重新编译这个文件,然后执行。
26
Servlet概念
• Servlet概念 – Servlet是运行在服务器上的Java程序,是一个中间层,主要用来处理客户端请求, 并对客户端请求进行响应,还可以连接应用服务。 – Servlet是在服务器端实现动态网页的一种技术
用户
显示逻wk.baidu.com层
数据库层 两层应用架构
两层应用架构显示逻辑层一般由HTML、JSP、ASP实现,通过JSP和ASP直接和数据 库相连
三层架构
• 在两层应用中,应用程序直接同数据库进行对话。三层结构在用户接口代码和数据库中 间加入了一个附加的逻辑层,通常这个层叫做“商务逻辑层”,如图
用 户
表 示 逻 辑 层
第1章 JSP概述
5
1.1软件编程体系简介 6
C/S结构编程体系 • 客户机/服务器(Client/Server,C/S)模式
– 即客户机和服务器结构。这种体系结构模式是以数据库服务器为中心、以客户机为网络基础、在 信息系统软件支持下的两层结构模型。这种体系结构中,用户操作模块布置在客户机上,数据存 储在服务器上的数据库中。客户机依靠服务器获得所需要的网络资源,而服务器为客户机提供网 络必须的资源。目前大多数信息系统是采用Client/Server结构。
15
什么是JSP
以下是helloWorld.jsp的源代码
<%@ page language="java" contentType="text/html; charset=gbk"%>
<html>
<head>
<title>Hello World!</title> </head>
HTML语句
<body bgcolor="#FFFFFF">
• 三层架构基本解决了两层架构的缺点,将显示部分和逻辑流程控制分开,利用服务器应用 程序实现显示部分,利用商务逻辑层实现程序的流程控制,分层使维护变的方便一些,而 且执行效率也会有所提高,但是相对部署起来就比较困难一些。
• 根据实际的需要,会进一步细化每一层,或者添加一些层,就形成了N层架构,和三层架 构一样,组件化的设计使维护相对容易,但是部署相对困难。
1.3 JSP概述 • JSP(JavaServer Pages)是由Sun Microsystems公司倡导、许多公司参与一起建立的一种动态网页
技术标准。JSP技术有点类似ASP技术,它是在传统的网页HTML文件(*.htm,*.html)中插入Java 程序段(Scriptlet)和JSP标记(tag),从而形成JSP文件(*.jsp)。 • 用JSP开发的Web应用是跨平台的,即能在Linux下运行,也能在其他操作系统上运行。 • JSP的1.0规范的最后版本是1999年9月推出的,12月又推出了1.1规范。此后JSP又经历了几个版 本,最新版本是2003年发布的JSP2.0。本书介绍的技术都是基于JSP2.0规范的。
– 即浏览器服务器结构。它是随着Internet技术的兴起,对C/S结构的一种变化或者改进的结构。在 这种结构下,用户工作界面通过浏览器来实现,极少部分事务逻辑在前端(Browser)实现,主要 事务逻辑在服务器端(Server)实现,形成所谓三层结构。这样就大大简化了客户端电脑载荷,减 轻了系统维护与升级的成本和工作量,降低了用户的总体成本。
Y 调用Jsp Parser将其 编译成SJearvvale源t程文序件
N N
Web服务器
调用JSDK将对应的SJearvalet 程序编译成Servlet字节码
执行(若未载入则先载入) 已有的对应的JavSae字rv节let 码
JSP运行原理 25
• 当服务器第一次接收到对某个页面的请求时,JSP引擎就开始进行上述的处理过程,将 被请求的JSP文件编译成Class文件。