網際網路技術概況

Download Report

Transcript 網際網路技術概況

網際網路技術概況
1
內容
•
•
•
•
•
網路基本架構
WWW 基本架構
WWW Browser
Web Server
WWW 相關技術
2
網路基本架構
• Client/Server 架構
• N-tier 架構
3
Client/Server 架構
Server
(伺服器端)
Client
(客戶端)
提出服務要求
電腦甲
電腦乙
提供相對應之服務
Client/Server 架構
4
N-tier架構(1)
Server
(伺服器端)
Client
(客戶端)
Client
(客戶端)
request
電腦1
response
Server
(伺服器端)
request
電腦2
response
request
...
response
電腦n
N-tier 架構
5
N-tier架構(2)
Client
(客戶端)
電腦1
request
Server
(伺服器端)
Client
(客戶端)
電腦2
Server
(伺服器端)
...
response
電腦n
request
response
中介軟體(Middleware)
(DCOM, CORBA, ...)
N-tier 架構
6
WWW 基本架構
WWW
Server
WWW
Client
WWW
Browser
(瀏覽器)
以http://...提出服務要求
提供相對應之服務
Web
Server
(伺服器)
WWW基本架構
7
WWW Browser
• Microsoft Internet Explorer
• Netscape Communicator
• …
8
Web Server
• Window 95/98
– Frontpage, PWS, WebSite, …
• Windows NT
– IIS
• Unix
– Apache, httpd, …
Window 98, NT 網站伺服器示範
9
WWW相關技術
WWW Client
(WWW Browser)
⊙ HTML
WWW Server
(Web Server)
Request
⊙ Script 語言
(JavaScript,VBScript)
⊙ Java Applet
Response
⊙ ActiveX技術
⊙ CGI
⊙ API
(ISAPI, NSAPI, ...)
⊙ Database連結
(ODBC, JDBC, ...)
WWW 相關技術
10
HTML(1)
• HTML(HyperText Makeup Language)
• 一種國際標準的超文件描述語言, 它是被
開發用來設計網頁的
• 以文字檔方式儲存,副檔名須設為htm或
html
• SGML(Standard Generalized Markup
Language ):標準通用標示語言
11
HTML(2)
•
•
•
•
HTML語法
HTML基本架構
HTML編輯方式
HTML實例
12
HTML語法
HTML語法基本上可分為以下兩種:
• <標示(Tag)>與</標示(Tag)>配對存在
– <HTML> ... </HTML>
– <P> ... </P>等
• <標示(Tag)>單獨存在
– <HR>
– <IMG>等
13
HTML基本架構
<HTML>
<HEAD>
<TITLE>網頁之標頭</TITLE>
</HEAD>
<BODY>
網頁之內容
</BODY>
</HTML>
14
HTML編輯方式
• 利用一般的文書編輯器來製作網頁
– Dos下之Edit或Window下之NotePad、
WordPad及Word等文書編輯器
• 利用HTML專用編輯器來製作網頁
– Microsoft之FrontPage、Netscape之Composer
等
15
補充:DHTML(1)
• Dynamic HTML
• 主要擴充HTML語言所缺乏之動態網頁
製作功能
• 利用DOM(Document Object Model)來處
理網頁內容
• 利用Script語言來處理動態功能
• 新增之功能
16
補充:DHTML(2)
• IE新增之功能
– 動態內容(Dynamic Content),動態排版樣式
(Dynamic Styles Sheets),動態定位(Dynamic
Positioning),內建資料處理(Data Awareness),
內建多媒體支援
• Netscape新增之功能
– 動態排版樣式(Dynamic Styles Sheets),動態
圖文多層處理(Dynamic Layers),動態字形
(Dynamic Fonts)
17
補充:XML(1)
• XML(Extensible Markup Language)
• 一種可延伸式標示語言,它是被設計用
來定義全球資訊網上所需要的標示語言
• XML並不能取代HTML,兩者需配合使
用
• XML describes a class of data objects and
partially describes the behavior of computer
programs which process them
18
補充:XML(2)
• XML之用途
– 顯示比較特殊及專門的格式,如化學方程式、
數學公式等
– 定義資料結構或資料庫欄位
– 可應用於企業間資料交換格式的定義
– 可應用於異質資料庫的整合
– 可將Server端之資料處理分散到Client端
19
Script語言
• JavaScript
• VBScript
20
JavaScript
• 是由網景(Netscape)公司與昇陽(Sun)公司
共同開發的一種新語言
• 主要是寫在HTML檔案中,增加網頁的
動態功能
• 需瀏覽器有支援JavaScript語言的情況下
才能執行
• JavaScript實例
21
VBScript
• 是由微軟(Microsoft)公司所開發的一種新
語言
• 主要也是寫在HTML檔案中,目的與
JavaScript相同,屬於VB (Visual Basic) 系
列
• 需瀏覽器有支援VBScript語言的情況下才
能執行
• VBScript實例
22
Java Applet
• 是利用昇陽(Sun)公司的Java語言來開發
• 主要的目的是希望以 Java語言所寫成的
程式能夠在不同的機器及作業環境下都
能執行(跨平台)
• Java語言所寫成的程式可分為以下兩種
– Java Applet (達到跨平台之目的)
– Java Application (與一般的應用程式相同)
• Java Apple實例
23
ActiveX技術
• 是由微軟(Microsoft)公司所提出之解決動
態網頁製作的一個方案
• 目前此種技術僅能在瀏覽器IE上執行
• 技術內容主要包含ActiveX Script、
ActiveX Control 及ActiveX Document等三
部份
24
ActiveX技術之內容
• ActiveX Script
– 主要是希望能夠執行所有的Script語言,例如JavaScript語言及
VBScript語言等
• ActiveX Control
– 希望透過此方法所設計之控制元件能夠在不同平台上都能執
行,其主要目地是為了達到如Java Applet能夠跨平台的功能
– ActiveX Control實例
• ActiveX Document
– 希望在瀏覽器中能夠整合如Word、Excel及PowerPoint等文書
應用軟體的檔案,達到在瀏覽器中亦能處理文書應用軟體檔
案之目的
25
CGI
•
•
•
•
•
CGI(Common Gateway Interface)
提供Web Server上呼叫外部程式之介面
CGI與WWW之關係圖
Dos-CGI:提供Dos作業系統下之CGI
Windows-CGI:提供Windows作業系統下
之CGI
• CGI實例
26
CGI與WWW之關係圖
WWW
Client
WWW
Server
WWW
Browser
Web C
Server G
I
Program
(程式)
Database
(資料庫)
CGI 與WWW之關係圖
27
API
•
•
•
•
API(Application Programming Interface)
提供Web Server上開發應用程式之介面
API與WWW之關係圖
ISAPI
– Microsoft Web Server之API
– IDC, ASP, ...
• NSAPI
– Netscape Web Server之API
28
API與WWW之關係圖
WWW
Client
WWW
Browser
WWW
Server
API
Web
Server 程式1 程式2
. . . 程式n
Database
(資料庫)
API 與WWW之關係圖
29
ISAPI-IDC
• IDC(Interface Database Connector)
• 主要提供WWW Server上資料庫存取能力
• 它需.idc及.htx兩種檔案的配合使用
– .idc檔:資料庫存取內容要求檔
– .htx檔:資料庫存取結果顯示檔
• 可以一般文書編輯器或FrontPage之設計
精靈來開發
• IDC實例
30
ISAPI-ASP
• ASP(Active Server Page)
• 提供Web Server上資料庫存取及一般程式
設計能力
• 此方式之副檔名為asp
• 可以一般的文書編輯器、 FrontPage之設
計精靈或InterDev來開發
• ASP實例
31
補充:JSP
• JSP(JavaServer Pages)
• an easy and powerful way to build web
pages with dynamically-generated content
• As part of the Java family
• rapid development of web-based
applications
• server- and platform-independent
• JSP(Compiler)、ASP(Interpreter)
32
補充:Java Servlet
• 以Java語言開發可在Web Server(Javaenabled)上執行之程式
• 提供動態擴充Web Server之功能
• Servlet與Applet間可做溝通
• 目前支援Servlet之Web Server有:Java
Web Server, Netscape Enterprise, Microsoft
IIS, Apache, . . .
• JBuilder有支援Servlet
33
Database連結
• ODBC
• JDBC
34
ODBC
•ODBC(Open DataBase Connectivity)
•Microsoft及Oracle所共同提出的
•開放式資料庫通訊界面
•ODBC與應用程式間之關係圖
•ODBC與WWW間之關係圖
35
ODBC與應用程式之關係圖
Application
Program
ODBC
Database
(資料庫)
ODBC與應用程式之關係圖
36
ODBC與WWW之關係圖
WWW
Client
WWW
Server
WWW
Browser
Web
Server
A
P
I
ODBC
Database
(資料庫)
ODBC 與WWW之關係圖
37
ODBC應用實例
• ADO(ActiveX Data Object)
– 利用ActiveX方式所開發之資料物件,可提供ASP存取資料庫
• ADO可透過ODBC連接資料庫
• ADO連接資料庫之步驟
– <%
Set Conn = Server.CreateObject("ADODB.Connection")
Conn.Open "student"
' Conn.Open "driver={Microsoft Access Driver (*.mdb)};dbq=" &
Server.MapPath("/ASPSamp/gmiweb/db/student.mdb")
SQL = "SELECT stud_no, name, sex, tel_no, address "
SQL = SQL & "FROM student "
SQL = SQL & "WHERE stud_no = '" & Request.Form("stud_no") & "'"
Set RS = Conn.Execute(SQL)
%>
38
JDBC
•JDBC(Java DataBase Connectivity)
•主要提供Java語言與資料庫間之標準界面
•功能與ODBC相同
•但僅適用於Java語言
39