第六章服务端开发 郝兴伟 山东大学计算机科学与技术学院 hxwasdu.edu. cn 山东大学计算机科学与技术学院 School of Computer Science& Techno logy, Shandong University
郝兴伟 山东大学计算机科学与技术学院 hxw@sdu.edu.cn 第六章 服务端开发
目录 63 Servlet与三层体系结构 64 Javabeans组件 65JSP技术 6.6ASP、JSP、PIP技术比较 67Java开发工具简介
目 录 6.3 Servlet与三层体系结构 6.4 JavaBeans组件 6.5 JSP技术 6.6 ASP、JSP、PHP技术比较 6.7 Java开发工具简介
63 Servlet与三层体系结构 Servlet是专门为在Wb服务器机器上运行而设计的Java程序, 它可以动态地扩展服务器的能力,并采用请求一响应模式提 供Web服务。 Servlet可以在支持Java的任何web服务器上运行。 对于本身并不支持Java可执行程序的Web服务器,可以添加 servlet的运行时环境软件(通常称为 servlet引擎)
6.3 Servlet与三层体系结构 Servlet是专门为在Web服务器机器上运行而设计的 Java 程序, 它可以动态地扩展服务器的能力,并采用请求-响应模式提 供Web服务。Servlet可以在支持Java的任何Web服务器上运行。 对于本身并不支持Java可执行程序的Web服务器,可以添加 servlet的运行时环境软件(通常称为servlet引擎)
631 Servlet与CGI CGI是 Common Gateway Interface的缩写,是公用网关接口。是 运行在Web服务器上的可执行程序,用于扩展htm的功能。 因为,HTML语言的功能是比较贫乏的,难以完成诸如访问 数据库等一类的操作,而实际的情况则是经常需要先对数据 库进行操作(比如文件检索系统),然后把访问的结果动态 地显示在主页上。这就是使用CG程序的目的 Java Servlet与CGI程序一样,最适合充当连接前端Web请求与 后端数据资源的中间层组件。使用 Java servlet可以以更高的 效率和可移植性来实现CGI的目的
6.3.1 Servlet与CGI CGI是Common Gateway Interface的缩写,是公用网关接口。是 运行在Web服务器上的可执行程序,用于扩展html的功能。 因为,HTML语言的功能是比较贫乏的,难以完成诸如访问 数据库等一类的操作,而实际的情况则是经常需要先对数据 库进行操作(比如文件检索系统),然后把访问的结果动态 地显示在主页上。这就是使用CGI程序的目的。 Java Servlet与CGI程序一样,最适合充当连接前端Web请求与 后端数据资源的中间层组件。使用Java Servlet可以以更高的 效率和可移植性来实现CGI的目的
632三层体系结构 1.C/S两层结构 2.B/S三层结构
6.3.2 三层体系结构 1. C/S两层结构 2. B/S三层结构
1.C/S两层结构 客户机服务器(CS)计算模式是一种典型的两层模型,两层模型当时曾 经具有创新意义,因为它将一些计算任务从主处理器上卸载到灵巧的客 户机。常规的基于LAN的数据库应用程序就是一个例子,其中数据库管 理器服务器软件驻留在一个专用的服务器机器上,而用户则通过他们的 工作站上的客户机代码(用户程序)来访问数据库 缺点: 胖客户、维护麻烦
1. C/S两层结构 客户机/服务器(C/S)计算模式是一种典型的两层模型,两层模型当时曾 经具有创新意义,因为它将一些计算任务从主处理器上卸载到灵巧的客 户机。常规的基于LAN 的数据库应用程序就是一个例子,其中数据库管 理器服务器软件驻留在一个专用的服务器机器上,而用户则通过他们的 工作站上的客户机代码(用户程序)来访问数据库。 缺点: 胖客户、维护麻烦
2.B/S三层结构 个三层结构模型通常包括: (1)一个Web浏览器作为客 用户层 户层。Web浏览器由于有可能 客户端浏览器 〔浏览器〕 成为一种真正的通用客户机, 使它从观念上取代了两层结构 的“胖客户机”。 Wb存取层业务逻辑wb服务器 〔 CGIServletJSPJEJB)〔中间层 (2)如果浏览器作为Web应 用程序体系结构的标准瘦客户 数据层 机获得认可,那么以前驻留在数据库系统棋他数据源/敌据库服务器 两层模型的胖客户机中的功能 会怎么样呢?现在,应用程序 图6-5三层结构的分层功能界定φ 专用的功能并不移植回服务器 (例如数据库服务器),而是 有意将它驻留在一个新的中间 层上
2. B/S三层结构 一个三层结构模型通常包括: (1)一个Web 浏览器作为客 户层。Web 浏览器由于有可能 成为一种真正的通用客户机, 使它从观念上取代了两层结构 的“胖客户机” 。 (2)如果浏览器作为Web 应 用程序体系结构的标准瘦客户 机获得认可,那么以前驻留在 两层模型的胖客户机中的功能 会怎么样呢?现在,应用程序 专用的功能并不移植回服务器 (例如数据库服务器),而是 有意将它驻留在一个新的中间 层上
6.3.3 Servlet编程 中间层的出现,使得Web编程向服务器端发展。由传统的CGI编 程向 Servlet技术的转移说明三层模型正在增强 Java Servlet的出现,为应用程序员使用Java来创建Web应用 程序开辟了新的途径。但是, Servlet只是工作在Web服务器上 的一个连接客户请求和数据库系统的中间层,仅有 Servlet还 不能为真正的企业计算提供完整的模型
6.3.3 Servlet编程 中间层的出现,使得Web编程向服务器端发展。由传统的CGI编 程向Servlet 技术的转移说明三层模型正在增强。 Java Servlet的出现,为应用程序员使用Java来创建Web应用 程序开辟了新的途径。但是,Servlet只是工作在Web服务器上 的一个连接客户请求和数据库系统的中间层,仅有Servlet还 不能为真正的企业计算提供完整的模型
1.编写 Servlet所需要的开发环境 进行 Servlet开发所需要的基本环境是 (1) JSDK (Java Servlet Development Kit) JSDK包含了编译 Servlet应用程序所需要的Java类库以及相关 的文档。 利用Java1.1进行开发的用户,必须安装JSDK Java1.2或以上版本,已经集成了JSDK,不需要单独安装 (2) 支持 Servlet的Web服务器,如 Tomcat Tomcat是 Servlet2.2和JSP1.1规范的官方参考实现
1. 编写Servlet所需要的开发环境 进行Servlet开发所需要的基本环境是: (1)JSDK(Java Servlet Development Kit) JSDK包含了编译Servlet应用程序所需要的Java类库以及相关 的文档。 --利用Java 1.1进行开发的用户,必须安装JSDK。 -- Java 1.2或以上版本,已经集成了JSDK,不需要单独安装 (2)一个支持Servlet的Web服务器,如Tomcat。 Tomcat是Servlet 2.2和JSP 1.1规范的官方参考实现
2. Servlet的开发过程 Servlet不是一个真正意义上的完整的独立的Java程序,因为 他没有main()函数。他只是运行在Web服务器上的一个负责 用户和数据层之间转换的接口,它是用Java编写的类。并且所 有的 Serve都必须继承基本的 Servlet类,定义请求处理的方 法 Servlet编程要求必须要掌握Java程序设计语言,还要对面向 对象有所了解。Java语言程序设计主要是对Java类库的使用, 同样,掌握 Servlet编程需要熟练使用Sn公司的JSDK
2. Servlet的开发过程 Servlet不是一个真正意义上的完整的独立的Java程序,因为 他没有main()函数。他只是运行在Web服务器上的一个负责 用户和数据层之间转换的接口,它是用Java编写的类。并且所 有的Servlet都必须继承基本的Servlet类,定义请求处理的方 法。 Servlet编程要求必须要掌握Java程序设计语言,还要对面向 对象有所了解。Java语言程序设计主要是对Java类库的使用, 同样,掌握Servlet编程需要熟练使用Sun公司的JSDK