Server-Side Programming I

Download Report

Transcript Server-Side Programming I

E-Commerce:
Fundamentals and Applications
Chapter 4 : Server-Side Programming I
Servlet Fundamentals
_______________________________________________________________________________________________________________
E-Commerce: Fundamentals and Applications
1
 Wiley and the book authors 2001
Outline

Common server-side programming techniques
_______________________________________________________________________________________________________________
E-Commerce: Fundamentals and Applications
2
 Wiley and the book authors 2001
Revisiting the Three-tier Model

Web-based e-commerce applications are usually
built according to the “Three-tier Model” (Fig.
4.1), which includes:
The First-tier: Web Client


The Second-tier: Server-side Application (SSA)


Discussed in Chapter 3
Discussed in this chapter
The Third-tier: Database Management Systems
(DBMS)

Discussed in Chapter 5
_______________________________________________________________________________________________________________
E-Commerce: Fundamentals and Applications
3
 Wiley and the book authors 2001
Three-Tier Model
(Fig. 4.1)
First-tier : Web Clients
Client
Browser
Client
Browser
Client
Browser
Third-tier (DBMS) :
Database Cluster(s)
DB2
databases
Internet
SQL
Server
Second-tier : Server-side Web
Applications
Database
Cluster
Oracle
databases
Other
databases
Database
Connectivity
Web Server
Application
Server
_______________________________________________________________________________________________________________
E-Commerce: Fundamentals and Applications
4
 Wiley and the book authors 2001
Server-side programming
technologies




There are numerous ways to implement serverside applications. Common examples include:
CGI (Common Gateway Interface)
ASP (Active Server Page)
Java Servlets
PHP, Perl, & other server programming
languages
_______________________________________________________________________________________________________________
E-Commerce: Fundamentals and Applications
5
 Wiley and the book authors 2001
Common Gateway Interface (CGI)


Early Web page designs were “static” in the
sense that a client can only request for a static
HTML document from the Web server (Fig. 4.2).
Later, CGI programming techniques were
introduced to remove this constraint by providing
dynamic Web pages via server-side interaction,
as shown in Fig. 4.3.
_______________________________________________________________________________________________________________
E-Commerce: Fundamentals and Applications
6
 Wiley and the book authors 2001
Static Web Page Retrieval
(Fig. 4.2)
 Request for
Web Document
 HTTP Request
Web Documents
 Retrieve
Document
 HTTP Document
Web Browser
Web Server
_______________________________________________________________________________________________________________
E-Commerce: Fundamentals and Applications
7
 Wiley and the book authors 2001
CGI-based Web Application
(Fig. 4.3)
 HTTP Request
Web Browser
 HTTP Document
Web Server
 Output
(HTML)
 HTML forms to
invoke CGI scripts
 Get Data
CGI Scripts/
Applications
Database
 Return data
_______________________________________________________________________________________________________________
E-Commerce: Fundamentals and Applications
8
 Wiley and the book authors 2001
Common Gateway Interface (CGI)


Fig. 4.3 explains the retrieval of a static Web
page. The Web browser goes to the designated
URL on a specific Web server to retrieve the
required static HTML document when it receives
a client request.
Note the content is independent of the request, in
the sense, everyone who makes a request to that
particular URL gets the same document.
_______________________________________________________________________________________________________________
E-Commerce: Fundamentals and Applications
9
 Wiley and the book authors 2001
Active Server Page (ASP)




ASP is a "scripting" technique that runs on Web
servers rather than Web clients.This contrasts
with VBScript and JavaScript which run on web
clients.
It basically generates HTML documents for the
Web client.
Execution of the ASP code by the server returns
the corresponding HTML document to the client.
Fig. 4.4 shows the schematic diagram of ASP
model.
_______________________________________________________________________________________________________________
E-Commerce: Fundamentals and Applications
10
 Wiley and the book authors 2001
ASP Model
(Fig. 4.4)
ASP Engine
 HTTP Request
 HTTP Document
Web Browser
Web Server
Database
_______________________________________________________________________________________________________________
E-Commerce: Fundamentals and Applications
11
 Wiley and the book authors 2001
Disadvantages of CGI programs

Each new request activates a new process to
run the CGI program

Creating a process requires time and resource
so CGI programs is not as scaleable a solution

Also, CGI programs may raise security problems.
_______________________________________________________________________________________________________________
E-Commerce: Fundamentals and Applications
12
 Wiley and the book authors 2001
Java Servlet




A servlet is a small piece of server-side
application, which can be viewed as the serverside analog of an applet.
In a typical servlet application, a servlet-enabled
Web server receives an HTTP request from the
client.
It then forwards the request to the servlet engine
for performing the necessary operations as
specified by the program.
Finally it returns a response (e.g., HTML
document) to the client via the Web server (Fig.
4.5)
_______________________________________________________________________________________________________________
E-Commerce: Fundamentals and Applications
13
 Wiley and the book authors 2001
Typical Web-based Servlet
Interaction (Fig. 4.5)
HTTP Request
HTTP Response
Web Browser
Web Server
Servlet Engine
Database
_______________________________________________________________________________________________________________
E-Commerce: Fundamentals and Applications
14
 Wiley and the book authors 2001