JSP程式設計 基本概論 歐陽芳泉 Fang-Chuan Ou Yang

Slides:



Advertisements
Similar presentations
LOGO 第 9 章 Java Servlet 和 JSP 编程 孙焘. 重点: servlet 编程原理 1 servlet 的基础类与编程实现 2 JSP 编程原理 3 JSP 的常用语法 4.
Advertisements

1 Java 语言程序设计 计算机系 鲍金玲. 2 引子 甲骨文 甲骨文是全球最大的信息管理软件及服务供应商,成立于 1977 年,公司总部 设在美国加利福尼亚州的红木城( Redwood Shores ),全球员工达 名, 包括 名开发人员、 7500 多名技术支持人员和.
第 9 章 测试部署  9.1 测试  9.2 部署. 9.1 测试  应用测试:使用 JUnit 单元测试框架 测试的目的是检验开发结果是否满足规定需求,测试是保证软件质量的一个重要手段, 在软件开发过程中是不可缺少的组成部分。 单元测试与集成测试分别有各自的定义:在实际开发中,两者之间的界定是模糊的。
程序设计语言基础 软件工程系 秦晓燕. 课程目标 了解面向对象程序设计的思想,以及软件 开发流程。 学习 Java 语言的基本概念和编程方法,基 本掌握 Java 类库的使用。 能够利用所学的方法开发简单的小型应用 程序.
Java 程序设计 案例教程 北京大学出版社 第 01 章. Java 程序设计案例教程 第 01 章 Java 语言与面向对象程序设计 Java 语言的历史 Java 语言的特点 Java 程序的分类 Java 环境配置 Eclipse 的安装 Java 程序的调试 教学目标.
第 7 章 配合 例子源代码一起使用 Power point 制作:耿祥义 张跃平 普通高等教育 “ 十一五 ” 国家级规划教材 JSP 与 JavaBean.
淮海工学院 计算机课程 第 1 章 Java 入门 1.1 Java 的起源与发展 1.2 Java 程序开发与运行环境 1.3 Java 程序设计步骤 1.4 Java 程序的构成 一个小游戏.
HE Fixed Assets Manage System
动态Web开发技术--JSP.
Java 2实用教程(第3版)教学课件 主讲教师:张国平
第一章 JSP概述.
国家科学图书馆: 刘丹军、赵雅娟、王晓梅、胡正银等 创想通科技: 阎武鹏 等 2010年 洛阳
第1章 Java语言概述.
Java程序设计教程 第一讲 Java概述.
SAE Java 实际应用 在这里写上你的标题 作者名字/日期
JAVA程序设计.
《Java程序设计之网络编程》 教学课件 重庆大学计算机学院
MVC Servlet与MVC设计模式.
第一章 JSP概述 学习目标 JSP技术是目前WEB开发技术中应用最广泛的一种.本章对JSP技术、优点、缺点、应用前景作了简要介绍。
计算机学院计算机科学与技术系 中德联合软件技术研究所 李波
J2EE Struts 和Spring 的区别.
建设数字化的卫生监督体系 深 圳 市 卫 生 监 督 所 2006年4月.
第8章 系統架構.
網頁技術簡介.
大型主机应用上的开放系统和中间件 2011年度教育部-IBM精品课程
分布式系统 Distributed Systems 第 2 讲 系统模型
第七章 电子政府的支撑技术 制作人:王 静.
第1章 java简介及环境搭建 第1章 Java简介及开发环境搭建.
5.1 – 表格(FORM) 輸入元素 : 兩種傳遞方法 : GET or POST 範例 1. 文字欄位 Text box
Topics 應用架構 學習路徑 熱門議題 相關認證.
Hello World 體驗實作第一個JSP程式.
第9章 过滤器和监听器技术 过滤器(Filter)和监听器(Listener)是两种特殊的Servlet技术。过滤器可以对用户的请求信息和响应信息进行过滤,常被用于权限检查和参数编码统一设置等。监听器可以用来对Web应用进行监听和控制的,增强Web应用的事件处理能力。 本章主要介绍过滤器和监听器的编程接口、基本结构、信息配置、部署和运行,最后通过案例说明过滤器和监听器的典型应用。
Microsoft .NET 第4組 十月15, 2002 B 陳東傑 B 蔣佳勳
软件设计模式与体系结构课程设计 周 宇 College of Information Science and Technology
J2EE 培训课程.
数据库操作示例 import java.sql.*; //导入java.sql包 public class JDBCDemo {
JDK的安裝.
Arena System Technology Architecture 系统技术架构 1、Database V2(Lotus Notes)V3(Oracle8i) 2、Application Server SilverStream2.53 (Java as server side programming.
第五章 信息与系统集成技术 概述 数据流集成技术 信息流集成技术 信息管理集成技术 流程重组与业务流程集成 企业门户集成 企业集成架构
作業系統 補充: 雲端運算.
J2EE Course 2018/11/20.
从UNIX到Windows的 电信软件移植实践
2018/11/20 第一章 Java概述 武汉大学计算机学院计算机应用系 2018/11/20 14:33.
Chap 3 資料庫模型與處理架構.
崑山科技大學資訊管理系 伺服網頁程式設計 系統開發細部流程 教師:游峰碩.
BizTalk Server 2004.
第一章: Java Web 开发技术概述.
第一章 電腦、程式與JAVA.
高级Web技术 复 习.
物流管理的层次 战略 战术 运营 执行 .目标 .供货政策,服务标准 .物流网设计 作什么 制定目标,政策 .需求预测
2018/12/7 Java语言程序设计 教师:段鹏飞.
Oracle Containers for J2EE(OC4J) 独立版
第4章 商务逻辑层及其技术.
第一讲 J2EE基础 博和利初级培训 —开发技能.
新世代計算機概論第三版 第11章 網際網路.
認識 Java.
張智星 台大資工系 多媒體檢索實驗室 第十二章 ASP基本介紹 張智星 台大資工系 多媒體檢索實驗室.
第二章 資訊管理的科技觀點.
第 1 章 Java 簡介.
第一章 JSP概述 study-thinking-action.
01.Java语言概述 讲师:复凡.
电子商务 王素凤
第1章 Java语言概述 学习目标 本章要点 上机练习 习 题.
面向对象 程序设计语言基础 马骏
第十五章 WWW網頁的製作 計算機概論編輯小組.
JSP程序设计 第9章 Servlet简介.
第十二章 过滤器.
Web Service 尹伟铭
98專題報告 行動裝置應用實例 -個人名片管理助手程式
李青樺 陳筱綺 郭沛翎 黃斐琪 蔡佳娟 指導老師 : 葉佳益老師
Presentation transcript:

JSP程式設計 基本概論 歐陽芳泉 Fang-Chuan Ou Yang ouyang@cyu.edu.tw Good morning everybody , today I want to present is about using grid service technology on mobile learning platform . Recently , Grid Computing has become a well-known information technology , and the standard of Grid Service bases on Grid Computing is developed .On the other hand , network-based education likes e-learning or m-learning becomes more popular , too . Although e-learning and Grid Service are two distinct areas , e-learning increasingly addresses learning resource sharing and reuse , interoperability , collaboration , and various modes of interactions . And it is where Grid and Grid Service come up . In our research , we present a novel architecture , it employs Grid Service core technology to build up our mobile learning platform . We call this architecture “m-learning Grid” . In next several sections , I will describe the architecture in detail , and report our experimental result . Fang-Chuan Ou Yang ouyang@cyu.edu.tw

課程摘要 Part.1 導論 Part.2 Tomcat的設定 Part.3 JSP基本概念

Part.1 導論

導論 (1/8) Client / Server: Client為服務的需求者;Server為服務的提供者。 request response

導論 (2/8)  What’s “tier” ? 在電腦硬體上,Tier係指一個實體的元件將硬體的架構分割成為一至多個子層次 (sub-layer)。 在軟體上,Tier係指一個屬於特定領域的軟體,而不同於其他軟體。 最終的目的是將所有的tiers藉由interface、middleware整合起來。

導論 (3/8) Internet Three-tier Client / Server architecture: 在Client / Server中,亦即使用者系統與資料庫之間加入一個中介層 (middle tier)。 Presentation tier Server Tier Database layer Internet

導論 (4/8) Three-tier Client / Server architecture (續): Three-tier主要目的為降低Client Side的運算負擔,成為一”thin client”。 Middle tier的實作上有很多型式,例如:transaction processing monitors, message servers application servers…

導論 (5/8) Application Server in Three-tier : 不負責GUI,而是負責分享商業邏輯,運算以及連接資料庫。 改善了在C/S中商業邏輯及運算集中於Client而難以維護的問題。

導論 (6/8) What’s middleware ? 藉由標準(standards)或協定(protocols)來作為不同硬體間的橋樑。 Fundamental middleware : low-level system, such as network operating system (NOS) Applied middleware: it usually followed standards or specs. such as CORBA, RMI, ODBC User refined middleware: based on applied middleware to customized a particular system.

導論 (7/8) Modern C/S Business Application Architecture: 分為使用者介面層、商業邏輯層、資料層。 User interface Business function data Web HTTP Server Web Application Server CORBA Server payment server, and so on

導論 (8/8) Web Server、Http Server以及AP Server: : : Internet Web Server Client Http server 80 Service xxxx Application Server Service : : Service

Part.2 Tomcat的設定

Tomcat的設定 (1/5) Tomcat安裝:http://jakarta.apache.org/ Tomcat即為一種Servlet 和 JSP container。能夠執行Servlet與JSP的環境;Tomcat亦實作了HTTP1.1的規範,成為能夠單獨運作的Web Server。  安裝步驟: 安裝JDK,設定環境變數JAVA_HOME=JDK安裝目錄。 安裝Tomcat,選擇性安裝成Service type。 測試http://127.0.0.1:8080

Tomcat的設定 (2/5) Tomcat設定: /conf/server.xml設定有關Tomcat的組態,例如:connect port、virtual directory等等。 …/WEB-INF/放置Web應用程式相關檔案,例如:web.xml可以設定web應用程式的環境變數。 …/WEB-INF/classes放置servlet或Javabeans。

Tomcat的設定 (3/5) Tomcat設定 (續): /conf/server.xml設定virtual directory: 加入下列此段設定-  <Context path="/examples" docBase="webapps/examples" crossContext="false" debug="0" reloadable="true" > </Context>

Tomcat的設定 (4/5) Tomcat與Apache的整合: 整合Apache與Tomcat,把靜態的網頁交給Apache處理,動態的網頁(JSP)則交給Tomcat處理,有下列好處:   -Apache在處理靜態網頁時比Tomcat還要快   -Apache是一個功能強大且完整的網頁伺服器你原來的網站架構在Apache上,你想保留原來靜態的網頁並加入由Tomcat處理動態網頁的功能;   -或是你想用Tomcat來取代原來在Apache上的CGI程式

Tomcat的設定 (5/5)  Tomcat與Apache的整合 (續):

Part.3 JSP基本概念

JSP基本概念 (1/22)  JSP的基本概念: JSP是基於Java™2 Platform, Enterprise Edition (J2EE) 的技術,用來產生動態的網頁內容,例如:HTML, DHTML, XHTML, XML等等。 JSP的前身為Servlet,Servlet亦為J2EE的技術。 JSP文件以主字為基礎 (Text-Based),描述了如何處理在HTTP協定下的Request,以及產生Response。 檔案名稱為副檔名*.jsp。

JSP基本概念 (2/22)  Java技術: J2ME J2SE J2EE

JSP基本概念 (3/22)  JSP之於J2EE:

JSP基本概念 (4/22)  JSP之於J2EE (續):

JSP基本概念 (5/22)  Servlet: Sun Microsystems在1997年3月由JavaSoft部門將Servlets API定案並推出Servlets API 1.0。Servlets的功能包含了當時的CGI (Common Gateway Interface) 與Netscape Server API (NSAPI)的產品功能,為100% Pure Java的Server-Side程式。

JSP基本概念 (6/22) Servlet的特色: 可攜性:跨平台,Write Once、Use Anywhere的。 強大的功能:完全運用Java API的威力,包含網路存取、多執行緒 (Multi-Thread)、影像處理、RMI (Remote Method Invocation)、分散式伺服端元件 (Enterprise Java Bean)、物件序列化 (Object Serialization) 等。若要連結資料庫,則可透過JDBC連結各種資料庫。 效能:Servlets在載入執行後,物件實體 (instance) 會保留在伺服器的記憶體中,如果有客戶端請求 (request) 時,伺服器會呼叫同一個實體來服務客戶端的請求,因此在效率上大幅度超越CGI程式。 安全性:Servlets具有型別檢查 (Strong Type Checking) 與垃圾回收 (Gargabe Collection) 的機制,確保Servlets程式的安全與伺服器的穩定性。另外透過例外控制 (Exception-Handling),避免問題程式導致伺服器毀損 (Crash)。

JSP基本概念 (7/22) Servlet的執行原理: 當Servlets載入時,Servlets Engine可以在同一個JVM上執行所有的Servlets ,除了本身的私有資料受到保護外,在Servlets間也可以共用資料。

JSP基本概念 (8/22) Servlet的執行原理 (續): 客戶端的需求並不是直接和Servlet溝通,而是透過Web Server或AP Server來負責管理;此外,Servlet的載入、起始化、 終結亦是由Servlet Container/Engine來負責。 每一個傳送至Servlet的需求會自動以一個Thread來處理,而不像CGI會產生一個原生的實例物件。

JSP基本概念 (9/22)  Servlet的執行原理 (續):

JSP基本概念 (10/22) Servlet的執行原理 (續): Servlet Container/Engine Client 1 Thread-1 Servlet_1 Thread-2 Servlet_1 instance Client 2 Servlet Container/Engine

JSP基本概念 (11/22) Servlet實測 : 安裝J2EE平台或Servlet Container。前者會自動設定好lib classpath。 撰寫Servlet並compile。如使用Tomcat可於…/common/lib/找到servlet-api.jar,將其設入classpath。 將編譯好的檔案放入…/WEB-INF/classes下

JSP基本概念 (12/22) Servlet實測 (續):HelloServlet.java import java.io.*; import javax.servlet.*; import javax.servlet.http.*; public class HelloServlet extends HttpServlet { public void doGet(HttpServletRequest request, HttpServletResponse response) throws IOException, ServletException { response.setContentType("text/html"); PrintWriter out = response.getWriter(); out.println("<html>"); out.println("<head>"); out.println("<title>My first servlet</title>"); out.println("</head>"); out.println("<body>"); out.println("<h1>Hello Servlet!</h1>"); out.println("</body>"); out.println("</html>"); }

JSP基本概念 (13/22) Servlet實測 (續):web.xml 設定web.xml,於<web-app>內加入下列兩段: <servlet> <servlet-name>HelloServlet</servlet-name> <servlet-class>HelloServlet</servlet-class> </servlet> <servlet-mapping> <url-pattern>/servlet/HelloServlet</url-pattern> </servlet-mapping>

JSP基本概念 (14/22) Servlet實測 (續): 其中http://127.0.0.1:8080為Tomcat的位置;/myweb為一虛擬目錄;/servlet/HelloServlet為Servlet對映路徑(Servlet mapping)。

JSP基本概念 (15/22) JSP (Java Server Page): Java Server Pages規格(by now v1.2)提供WEB應用程式發展者一個架構,這個架構使用HTML與XML樣版和Java程式碼來產生伺服器端動態的內容,具有安全、高效率與跨平台的特性。 JSP規格從1999年6月發表之後,有許多供應商已經將JSP引進Servlet Engine和應用程式伺服器中,例如Apache Group的Jakarta Project、Caucho Technology的Resin、Evermind的Orion Application Server等等 。

JSP基本概念 (16/22) JSP的特色: Write Once, Run Anywhere 搭配可重複使用的元件 網頁內容的產生和顯示分離 採用標籤化頁面開發 支援多層次企業應用架構 *根據Sun Microsystems公司的說法, JSP應該只負責展現層的部份,而商業邏輯層的部份,例如資料處理、運算、分析與資料庫連結處理,都要放在JavaBeans元件中

JSP基本概念 (17/22)  JSP規格中提出之MVC:

JSP基本概念 (18/22)  JSP 的運作流程:

JSP基本概念 (19/22) JSP v.s. Servlet: JSP和Servlet在技術原理上是相通的;   Servletjavax.servlet.*   JSPjavax.servlet.jsp.* JSP改善了Servlet撰寫複雜的缺點,在撰寫簡化許多。

JSP基本概念 (20/22)  JSP v.s. ASP:

JSP基本概念 (21/22) JSP 實測: 利用文字編輯器撰寫JSP程式,副檔名需為*.jsp。 將*.jsp放入Tomcat的虛擬目錄下。 開啟瀏覽器執行: http://127.0.0.1:8080/myweb/index.jsp 其中http://127.0.0.1:8080為Tomcat的位置;/myweb為一虛擬目錄;index.jsp為JSP檔案名稱。

JSP基本概念 (22/22) JSP 實測 (續):index.jsp <html> <head> <title>My first JSP</title> </head> <body> <% out.print("Hello JSP!<br>"); out.print("現在時間:"); out.print(new java.util.Date()); %> </body> </html>

Q & A