Tải bản đầy đủ (.pdf) (84 trang)

Luận văn xây dựng cửa hàng bán linh kiện trên mạng

Bạn đang xem bản rút gọn của tài liệu. Xem và tải ngay bản đầy đủ của tài liệu tại đây (1.84 MB, 84 trang )


GVHD : Ths.Bùi Trọng Hiếu SVTH : Trương Nguyễn
Anh Thy











Luận văn

Xây dựng cửa hàng bán linh kiện
máy tính trên mạng



















GVHD : Ths.Bùi Trọng Hiếu SVTH : Trương Nguyễn
Anh Thy



CHƯƠNG 1
DẪN NHẬP

Ngày nay, công nghệ thông tin đã và đang dần dần chuyển hướng
phát triển của mình sang các dịch vụ Web.Và một trong những dịch vụ
được mọi người quan tâm nhất là Thương mại Điện tử. Dịch vụ này đã
thay đổi mô hình doanh nghiệp toàn cầu và cơ cấu kinh tế một cách hoàn
toàn.Vơi sự phát triển của internet đã tạo ra một chợ điện tử toàn cầu mà nó
vượt xa giới hạn của không gian và thời gian.
Nhờ Thương mại Điện tử, với những thao tác đơn giản trên máy có
nối mạng Internet bạn sẽ có tận tay mua những gì mình cần mà không
phải đi đâu. Bạn chỉ cần click vào trang dịch vụ Thương mại Điện tử,
làm theo hướng dẫn và click vào những gì bạn cần. Các nhà dịch vụ sẽ
mang đến tận nhà cho bạn. Việc thanh toán cũng dễ dàng qua hệ thống
ngân hàng hay trực tiếp nếu bạn muốn.Với nhịp độ phát triển như vũ
bão của Internet và sự sôi động của thị trường như hiện nay, bạn không
thể không ghé thăm dịch vụ Thương mại Điện tử dù chỉ là một lần.
Để tiếp cận và góp phần đẩy mạnh sự phổ biến của Thương mại
Điện tử ở Việt Nam, em xin trình bày “Xây dựng cửa hàng bán linh kiện
máy tính trên mạng”. Đây là một dạng của chương trình ứng dụng mạng nên

thường liên quan đến một máy chủ và nhiều máy khách. Do đó chúng ta phải
khảo sát,chọn lựa giải pháp như thế nào để cho chương trình độc lập hơn,đáng
tin cậy hơn và chương trình cũng trở nên linh động trong việc thay thế nâng
cấp sau này.Bên cạnh đó chúng ta phải tìm hiểu các công nghệ giúp tạo một
trang web thể hiện được giao diện nhập dữ liệu và kết quả.

GVHD : Ths.Bùi Trọng Hiếu SVTH : Trương Nguyễn
Anh Thy
Đi đôi với việc khảo sát,chọn lựa giải pháp và tìm hiểu các công nghệ đó là
phần phân tích và thiết kế hệ thống”xây dựng cửa hàn bán linh kiện máy tính
trên mạng.Dựa trên những khảo sát thực tế ta phải thiết lập một cơ sở dữ liệu
có đầy đủ các thông tin cần thiết.Và để xây dựng một cơ sở dữ liệu như thế ta
trình bày ba mức tiếp cận :
Mức quan niệm: xác định hệ thống có những đối tượng gì, chúng quan hệ
với nhau ra sao?
Mức logic: là mức đặt các đối tượng hệ thống vào một tổ chức và chúng
làm bằng phương tiện nào?
Mức vật lý: nhằm xác định phải làm như thế nào thì hệ thống vận hành
được?
Tiếp đến là hiện thực hệ thống thương mại điện tử đơn giản điển hình là
“xây dựng cửa hàng bán linh kiện máy tính trên mạng”.
Như vậy,ta đã có cái nhìn chung về quá trình xây dựng hệ thống thương
mại điện tử trong luận văn này.Và để hiểu rõ chi tiết hơn chúng hãy lần lượt đi
vào các chương sau.
Luận văn này gồm bốn chương:
Chương 1: Dẫn nhập
_ Giới thiệu tổng quan về quá trình xây dựng hệ thống bán hàng qua
mạng



Chương 2: Khảo sát lựa chọn giải pháp và tìm hiểu công nghệ
JavaServlet,JSP,JavaBean

GVHD : Ths.Bùi Trọng Hiếu SVTH : Trương Nguyễn
Anh Thy
_ Là quá trình khảo sát chọn lựa giải pháp và tìm hiểu các công nghệ được
ứng dụng trong quá trình xây dựng và pháp triển hệ thống bán hàng này.
Chương 3: Phân tích và hiện thực cửa hàng bán linh kiện máy tính
trên mạng.
_ Trong chương này luận văn sẽ trình bày tiến trình phân tích,thiết kế và
hiện thực hệ thống “xây dựng cửa hàng bán linh kiện máy tính trên mạng?
Chương 4: Kết luận và hướng phát triển
















CHƯƠNG 2
KHẢO SÁT,CHỌN LỰA GIẢI PHÁP

VÀ TÌM HIỂU CÁC CÔNG NGHỆ

2.1 KHẢO SÁT VÀ CHỌN LỰA GIẢI PHÁP
_ Hệ thống “ xây dựng cửa hàng bán hàng trên mạng” là một chương
trình ứng dụng mạng. Để xây dựng được hệ thống cần phải nghiên cứu, khảo
sát các công nghệ lập trình mạng, từ đó có một lựa chọn giải pháp tốt nhất thỏa
mãn các yêu cầu của đề tài.

GVHD : Ths.Bùi Trọng Hiếu SVTH : Trương Nguyễn
Anh Thy
_ Lập trình mạng thường liên quan đến một máy chủ và một hay nhiều
máy khách.Máy khách gởi yêu cầu đến máy chủ và máy chủ hồi đáp yêu cầu.
Máy khách bắt đầu bằng cách cố thiết lập nối kết với máy chủ. Máy chủ có thể
chấp nhận hay từ chối kết nối. Máy chủ phải đang chạy khi máy khách khởi
động. Máy chủ chờ nối kết từ máy khách. Có các câu lệnh cần để tạo máy chủ
và máy khách cũng như để chúng trao dữ liệu với nhau. Các máy giao tiếp với
nhau là dựa theo quy ước hay giao thức cốt lõi TCP/IP (Trasmission Control
Protocol / Internet Protocol).
 MÔ HÌNH GIỮA CÁC MÁY
1- Khảo sát mô hình
a-Mô hình khách / chủ
Một mô hình như đã trình bày ở trên được gọi là mô hình khách/ chủ.
Lập trình mạng ngày càng trở nên phức tạp. Mô hình lập trình đơn lẻ truyền
thống đã bị thay đổi rất nhiều. Ngày nay, bạn không còn đơn thuần ngồi viết
những ứng dụng để chạy trên một máy duy nhất. Chương trình ứng dụng đòi
hỏi sự tương tác từ nhiều phía người dùng, chia sẻ tài nguyên, triệu gọi từ xa,
liên kết giao tác, phân tán dữ liệu … Với những yêu cầu trên mô hình khách/
chủ đã ra đời và tồn đến ngày nay.
Theo mô hình khách / chủ tất cả các thao tác xử lý phức tạp đều được
chuyển giao cho máy chủ xử lý. Máy khách chỉ đóng vai trò gửi yêu cầu và

hiển thị dữ liệu. Điển hình của mô hình này là các ứng dụng cơ sở dữ liệu. Máy
khách là trình ứng dụng có khả năng kết nối và truy vấn dữ liệu từ một máy chủ
ở xa .
Mô hình máy khách /máy chủ ngày càng bị quá tải bởi độ phức tạp và nhu
cầu của người dùng. Nếu quản lý và phân phối ứng dụng đến 100 máy khách
nằm ở nhiều quốc gia khác nhau, điều này gây trở ngại về mặt địa lý. Việc cài
đặt trình điều khiển kết nối cơ sở dữ liệu MS SQL Server lên từng máy là mất
nhiều công sức, đó là chưa kể khi muốn chuyển hệ cơ sở dữ liệu MS SQL

GVHD : Ths.Bùi Trọng Hiếu SVTH : Trương Nguyễn
Anh Thy
Server sang hệ Oracle và thay cấu hình và kết nối với từng hệ cơ sở dữ liệu
xem ra thật khó khăn. Hay khi bạn muốn thay đổi mã nguồn của ứng dụng
khách. Nếu ứng dụng khách là bao gồm nhiều tập tin thực thi .exe và các thư
viện liên kết động (dll ) lên đến hàng chục MB, thì bạn phải gửi bản cập nhật
hàng chục MB này đến 100 máy khách yêu cầu cập nhật lại chương trình. Mô
hình phát triển ứng dụng đa tầng sẽ giúp giải quyết điều này . Các ứng dụng xử
lý của bạn không cài đặt trên máy khách nữa mà cài đặt trên ở một máy chủ
khác . Nhờ vậy mà máy khách trở nên gọn nhẹ , dễ cấu hình , dễ thay đổi phía
máy chủ . Nếu muốn thay đổi mã nguồn của trình ứng dụng, bạn chỉ cần thay
đổi trên một máy chủ.
Có thể nói mô hình máy khách/máy chủ là mô hình có ảnh hưởng nhất đến
công nghệ thông tin.
Thật vậy, mô hình khách/chủ đã giúp phát triển một phương thức phát triển
ứng dụng mới là việc phân chia ứng dụng thành nhiều lớp thực hiện những
chức năng chuyên biệt. Một ứng dụng thông thường được chia làm 3 tầng:
Giao diện (Presentation logic): lớp này là cấu nối giữa người dùng với ứng
dụng, cung cấp những chức năng của ứng dụng cho người dùng và nhận những
lệnh từ người dùng cho ứng dụng. Lớp này được thiết kế sao cho càng thân
thiện với người dùng càng tốt.Chức năng (tạm dịch từ Business logic): đây là

phần lõi của một chương trình, cung cấp tất cả những chức năng có thể có của
chương trình cho lớp giao diện bên trên.
Cơ Sở Dữ Liệu (Data Access logic): lớp này là Cơ Sở Dữ Liệu của ứng
dụng, cung cấp khả năng truy xuất đến Cơ Sở Dữ Liệu cho lớp chức năng nếu
cần.
Việc phân chia ứng dụng thành nhiều lớp còn giúp cho ứng dụng trở nên dễ
dàng thay đổi, cập nhật và đáng tin cậy hơn.
Ứng dụng đầu tiên của mô hình khách/chủ là ứng dụng chia xẻ tập tin (do
các tổ chức có nhu cầu chia xẻ thông tin giữa các bộ phận trong tổ chức được

GVHD : Ths.Bùi Trọng Hiếu SVTH : Trương Nguyễn
Anh Thy
dễ dàng và nhanh chóng hơn). Trong ứng dụng này, thông tin được chứa trong
các tập tin và được đặt tại một máy chủ của một phòng ban. Khi một phòng ban
khác có nhu cầu trao đổi thông tin với phòng ban này thì sẽ sử dụng một máy
khách kết nối với máy chủ và tải những thông tin cần thiết về.
Mô hình khách/ chủ được chia thành các mô hình : Mô hình 2 lớp (2 – tier),
mô hình 3 lớp ( 3-tier) hay còn gọi là mô hình nhiều lớp (n-tier).
b - Mô hình 2 lớp
Mô hình 2 lớp là một sự phát triển từ ứng dụng chia xẻ tập tin ở trên. Trong
ứng dụng chia xẻ tập tin, ta thay thế tập tin của máy chủ bằng một hệ thống
quản trị Cơ Sở Dữ Liệu (DBMS). Khi máy khách cần thông tin từ Cơ Sở Dữ
Liệu, nó sẽ yêu cầu DBMS thông qua mạng máy tính giữa các phòng ban.
DBMS xử lý yêu cầu và sau đó trả về cho máy khách những thông tin yêu cầu.
Ưu điểm của mô hình hai mức so với ứng dụng chia xẻ tập tin là làm giảm
bớt được lưu thông trên mạng. Ở ứng dụng chia xẻ tập tin, đơn vị truyền nhận
giữa máy khách và máy chủ là 1 tập tin, do đó khi máy khách yêu cầu thông tin
từ máy chủ thì máy chủ sẽ trả về cho máy khách toàn bộ một tập tin có chứa
thông tin đó. Trong khi ở mô hình hai mức thì máy chủ có thể trả về cho máy
khách đúng những gì mà máy khách yêu cầu với đơn vị truyền nhận có thể tính

bằng byte. Ngoài ra, hiện nay các DBMS còn cung cấp nhiều khả năng khác
như hỗ trợ giao dịch, cho phép nhiều người dùng cùng thao tác trên Cơ Sở Dữ
Liệu cùng lúc mà vẫn đảm bảo được tính toàn vẹn của dữ liệu.
Mô hình 2 lớp được chia làm 2 loại:
Tính toán tập trung ở máy khách ( thường gọi là fat client – thin server: ở
loại này, phía máy khách phải đảm nhận cả 2 tầng là giao diện và chức năng,
còn máy chủ chỉ làm nhiệm vụ của tầng Cơ Sở Dữ Liệu.


GVHD : Ths.Bùi Trọng Hiếu SVTH : Trương Nguyễn
Anh Thy
Ưu điểm của mô hình loại này là đơn giản, thích hợp cho các ứng dụng nhỏ
và vừa. Tuy nhiên nó cũng có một số nhược điểm:
 Do phần tính toán nghiêng về phía máy khách nhiều nên đòi hỏi máy
khách phải có cấu hình đủ mạnh.
 Cũng do phần lõi (chức năng) của chương trình nằm ở phía máy khách
nên khi chương trình cần nâng cấp thì sẽ rất khó khăn vì phải cập nhật lại
chương trình nằm ở toàn bộ các máy khách.
 Do mọi thao tác trên Cơ Sở Dữ Liệu đều thông qua mạng giữa máy
khách và máy chủ nên tốc độ của chương trình sẽ chậm đi.
Tính toán tập trung ở máy chủ (fat server – thin client): ở loại này, máy
khách chỉ đảm nhiệm phần giao diện còn máy chủ thực hiện chức năng của
tầng chức năng và tầng Cơ Sở Dữ Liệu.


Database Server
DBMS
 data access
logic


 presentation
logic
business logic


GVHD : Ths.Bùi Trọng Hiếu SVTH : Trương Nguyễn
Anh Thy

Ngược lại với loại fat client – thin server thì loại này có ưu điểm là giảm sự
lưu thông trên mạng và tốc độ nhanh hơn do lớp chức năng của chương trình
nằm ở máy chủ cùng với Cơ Sở Dữ Liệu(CSDL, do đó mọi thao tác với CSDL
của chương trình đều được thực hiện ngay trên máy chủ và thông tin lưu thông
trên mạng chỉ là những kết quả được trả về cho người dùng sau khi được tính
toán. Mặt khác, do phần lõi của chương trình được đặt tập trung tại máy chủ
nên việc cập nhật chương trình sẽ dễ dàng hơn. Tuy nhiên, do công việc được
tập trung quá nhiều tại máy chủ nên đòi hỏi cấu hình máy chủ phải đủ mạnh,
đặc biệt là khi có nhiều máy khách cùng truy xuất tới máy chủ cùng lúc.

c- Mô hình 3 lớp
Trong mô hình 3 lớp, tầng chức năng của chương trình được tách ra thành
một lớp tạo thành 3 lớp riêng biệt. Việc tách lớp này làm cho các phần của
Database Server
DBMS



Stored
Procedure

 business logic

 data access
logic

 presentation
logic


GVHD : Ths.Bùi Trọng Hiếu SVTH : Trương Nguyễn
Anh Thy
chương trình độc lập hơn, đáng tin cậy hơn, chương trình trở nên linh động hơn
trong việc thay thế, nâng cấp và do đó mô hình này rất thích hợp với những
ứng dụng có yêu cầu thay đổi thường xuyên như ứng dụng web.





2 Lựa chọn mô hình
“Hệ thống quản lý các dịch vụ bán hàng trên mạng” sẽ được trình bày theo
mô hình 3 lớp. Mô hình 3 lớp thuận tiện cho việc thiết kế , làm cho hệ thống
hoạt động dễ dàng và dễ thay đổi , nâng cấp theo yêu cầu đề tài. Mô hình 3 lớp
thường được dùng phổ biến trong các chương trình ứng dụng mạng.
Database Server
DBMS



Stored
Proced
ure


 data access
logic

 presentation
logic

Application Server
 business logic

GVHD : Ths.Bùi Trọng Hiếu SVTH : Trương Nguyễn
Anh Thy
Việc gửi yêu cầu và thể hiện dữ liệu là do phải trình bày giao diện sao cho
dễ dàng cho người dùng là lớp 1 ,thường gọi là client tier .
Chức năng xử lý các thao tác là nằm ở lớp 2 , gọi là Application Server
tier.
Dữ liệu được lưu trữ ở lớp 3 , gọi là Data Server tier.


Client tier Application Server tier Data


Ở mỗi lớp có các công nghệ kỹ thuật tương ứng để thiết kế giao diện cũng
như thực hiện các chức nãng chuyên biệt .

Luận văn tốt nghiệp

Trang 14
GVHD :Ths.Bùi Trọng Hiếu SVTH : Trương Nguyễn
Anh Thy

2.2 TÌM HIỂU CÁC CÔNG NGHỆ HỖ TRỢ CHO MÔ HÌNH
 Khảo sát công nghệ
1.> Lớp 1 (Client tier)
Ở máy khách có cài đặt trình duyệt Web ( Web browser ) dùng để truy tìm
và đọc các trang Web trên mạng. Địa chỉ trang Web sẽ được các trình duyệt gửi
đến máy chủ và máy chủ sẽ gửi trả về nội dung trang Web bao gồm các dữ liệu
như văn bản, hình ảnh, âm thanh … Trình duyệt sẽ chịu trách nhiệm trình bày
kết quả trang Web ra màn hình với những dữ liệu nhận được này . Các trình
duyệt thường được sử dụng hiện nay là : Internet Explorer của Microsoft ,
Netscape Navigator của Netscape Communication .
Một máy có thể sử dụng cả hai hay nhiều trình duyệt để gửi và nhận dữ
liệu .
Trên client có thể sử dụng các công nghệ như :
HTML (HyperText Marked Language ) /XML để tạo trangweb tĩnh .
 JavaScript.
 JScript.
 VBScript .
 ASP , JSP.
Công nghệ thành phần :
 ActiveX .
 Java Applet.
2.> - Lớp 2 (Server tier)
HTTP Server :
 Jrun .
Luận văn tốt nghiệp

Trang 15
GVHD :Ths.Bùi Trọng Hiếu SVTH : Trương Nguyễn
Anh Thy
 Apache .

 Web Logic .
 Web Sphere .
 Java Web Server .
 IIS .
 Personal Web Manager.

Trang Web động : Các công nghệ trên chỉ là giúp tạo một trang Web thể
hiện được giao diện để nhập dữ liệu và thể hiện kết quả trả về theo giao thức
HTTP. Còn thực chất việc nhận dữ liệu gửi đi và nhận dữ liệu về là có sự trợ
giúp của :
 Công nghệ CGI (Common Gate Interface ) .
 ASP (Actuve Server Page) của Microsoft.
 Java Servlet .
 JSP(Java Server Page ) của Sun MicroSystems .
Component Model & Object Request Broker :
 CORBA .
 COM /MTS.
 EJB / Java RMI .
 JavaBean
3.> - Lớp 3 (Data tier)
Lớp này có thể sử dụng các hệ quản trị cơ sở dữ liệu như :
Oracle .
DB2.
Luận văn tốt nghiệp

Trang 16
GVHD :Ths.Bùi Trọng Hiếu SVTH : Trương Nguyễn
Anh Thy
SQL Server ….
 LỰA CHỌN CÔNG NGHỆ VÀ PHẦN MỀM :

Sau thời gian khảo sát các công nghệ có thể dùng để thiết kế và căn cứ vào
yêu cầu của đề tài , điều kiện về phần mềm em quyết định lựa chọn ngôn ngữ
lập trình mạng Java các công nghệ mà Java cung cấp sau tương ứng với mô
hình 3 lớp đã chọn ở trên
1- Lớp 1 (client tier)
Các máy khách sẽ sử dụng 2 trình duyệt Internet Explorer (IE ) và Netscape
. Do vậy , đề tài sẽ phải sử dụng ngôn ngữ trình bày trang Web là HTML (
HyperText Markup Language ) , Java Script , Java Applet . Vì các công nghệ
này cho phép trang Web hoạt động trên cả IE và Netscape .Trong khi JScript ,
VBScript, ActiveXControl chỉ có tác dụng trên IE .
Một công nghệ nữa trợ giúp phát triển trang Web linh động là JSP vì JSP là
một cách đơn giản để người dùng ( nhất là lập trình viên không chuyên ) tiếp
cận được hướng lập trình Web phía máy chủ hiệu quả và nhanh hơn . Hơn nữa
JSP xét về mặt tốc độ nhanh hơn các trang web thực hiện diễn dịch theo cơ chế
khác ( sẽ trình bày sau ở phần các công nghệ sử dụng trong đề tài ).

2- Lớp 2 (server tier )
Do yêu cầu đề tài là ứng dụng có thể chạy trên nhiều hệ điều hành nên kỹ
thuật hỗ trợ cho lớp này sẽ là : JSP ,JavaBean , JDBC , JDBC – ODBC Bridge
( do một số thành phần dữ liệu của Microsoft không cho phép dùng kỹ thuật
JDBC ).
Đối với Web Server , thì công nghệ JRun đem lại nhiều hiệu quả cũng như
các công nghệ khác như Web Logic, Apache, Web Sphere nhưng vì hiện tại em
đang có trong tay các tài liệu cũng như phiên bản JRun , nên đề tài này sẽ sử
dụng phần mềm này.
Luận văn tốt nghiệp

Trang 17
GVHD :Ths.Bùi Trọng Hiếu SVTH : Trương Nguyễn
Anh Thy

JRun sẽ hỗ trợ cho Servlet engine và JavaBean.
Để hỗ trợ cho việc truy xuất dữ liệu từ lớp 3 , đề tài sử dụng kỹ thuật JDBC
và JDBC-ODBC Bridge .
3 -Lớp 3 (data tier )
Dữ liệu ở lớp này được xây dựng trên mô hình dữ liệu quan hệ và được lưu
trữ quản lý dưới sự trợ giúp của hệ quản trị cơ sở dữ liệu SQL Server .
Như vậy đề tài này sử dụng ngôn ngữ lập trình Java để thiết kế “Hệ thống
vụ bán hàng trên mạng” .Tiêu chuẩn để phát triển ứng dụng trên Web dựa vào
Java 2 platform Enterprise Edition (J2EE) . Một trong những công cụ hỗ trợ lập
trình là JRun .JRun cung cấp mô hình ứng dụng J2EE và môi trường để thi
hành ứng dụng J2EE .
Mô hình 3 lớp mà J2EE hỗ trợ có những đặc tính sau :
Client tier : Ở lớp này , máy khách sử dụng trình duyệt để truy cập vào
Middle tier qua kết nối HTTP như Internet .Lớp này bao gồm bất cứ Applet
nào chạy trên máy khách .
Server tier : Là chức năng của trang Web . Lớp này bao gồm cả phần giao
diện và các quy định về chức năng để tạo một trang Web . JRun được dùng để
thi hành các ứng dụng ở lớp này .
Data tier : Lớp này là kho lưu trữ dữ liệu Xí nghiệp có chứa đựng những dữ
liệu về chức năng của trang Web .
Java hỗ trợ cho người lập trình 3 kiến trúc của mô hình 3 lớp , đó là:
Kiến trúc thứ 1:





HTML
Servlet ,
JSP

Cơ sở
dữ liệu
Internet

JDBC

Client tier

Server tier

Data tier

Luận văn tốt nghiệp

Trang 18
GVHD :Ths.Bùi Trọng Hiếu SVTH : Trương Nguyễn
Anh Thy
Kiến trúc thứ 2:









Kiến trúc thứ 3:









Độ phức tạp , tính linh hoạt của mỗi kiến trúc được biễu diễn :









Kiến trúc thứ 3 dễ dàng thay đổi,nâng cấp khi cần thiết nhưng độ phức tạp
cao.Còn kiến trúc thứ 1 thì lại khó khăn khi chúng ta cần thay đổi hay nâng
cấp.Vì vậy đề tài sử dụng kiến trúc thứ 2 để thiết kế hệ thống .
Mô hình 3 lớp này mang lại nhiều thuận lợi cho các nhà phát triển trang Web :
Các lớp, thậm chí các thành phần cấu thành của lớp có thể được phân
phối vào hệ thống phần cứng phức tạp để cải thiện sự hoạt động và tính có thể
biến đổi của hệ thống .
Data tier

HTML,
Jscript,
JSP,
Java Applet
Servlet ,

Java
JSP
Bean



Cơ sở
dữ liệu
Internet

JDBC

Client tier

Server tier

Data tier


HTML,

Jscript,
JSP,
Java Applet
Servlet ,
JSP, EJB

JavaBean
Cơ sở
dữ liệu

Internet


JDBC

Client tier

Server tier

Độphức

t

p

Tính linh ho

t


cao

d


khó

Ki
ế
n trúc th



1

Ki
ế
n trúc th


2

Kiến trúc thứ

3

Luận văn tốt nghiệp

Trang 19
GVHD :Ths.Bùi Trọng Hiếu SVTH : Trương Nguyễn
Anh Thy
Lớp Middle tier làm cho máy khách không gặp khó khăn khi truy xuất
vào kho dữ liệu Xí nghiệp .
Giao diện lập trình ứng dụng (API ) Java Servlet định nghĩa các ứng dụng
Web (Web Applications) gồm có Java servlet , trang JSP (Java Server Page)
,HTML …. JRun làm cho máy chủ Web có thể thực thi các ứng dụng Web .
JavaBean đưa ra giải pháp hợp nhất, an toàn cho phép nhiều ứng dụng
có thể sử dụng lại nhiều lần để chia sẻ việc truy xuất dữ liệu .
Mô hình này giúp phân phối các ứng dụng của nhóm làm việc này với
nhóm làm việc khác . Ví dụ như các nhà phát triển JSP thì thường quan tâm
đến giao diện hơn là việc thi hành các lệnh chức năng Ngược lại , các nhà phát

triển EJB thì quan tâm đến dữ liệu và các thao tác làm việc với dữ liệu hơn là
sữ thể hiện giao diện của hệ thống
 TÌM HIỂU CHI TIẾT VỀ CÔNG NGHỆ
1.> Sự phát triển ứng dụng mạng java phía máy chủ
_ Ngày nay,ứng dụng mạng đang là xu thế chọn lựa của những công ty,nó
được triển khai trên internet extranet và intranet.Do nó có khả năng tăng thêm
năng suất và thay đổi cách làm doanh nghiệp của các công ty lớn nhỏ.
_ Sự phát triển ứng dụng Web server ra đời đã lâu.Lúc đó nhà phát triển
ứng dụng Web đã sử dụng CGI(Common Gateway Interface).Nhưng chúng tốn
nhiều bộ nhớ và bộ xử lý hơn là công cụ hiện đại và những chương trình khó để
gở rối.
Một sự cải tiến quan trọng đến với Java Servlet vào năm 1997 là JSP.Cả
java Servlet và JSP đều là công nghệ của Java ,nó hổ trợ mạnh đến Web server
như:kết nối cơ sở dữ liệu,truy cập mạng và nhiều luồng thao tác với mô hình xử
lý khác nhau.JavaServlet và JSP quản lý tất cả những việc mà chúng làm từ
một thể hiện đơn giản mà nó còn lại trong bộ nhớ và sử dụng nhiều luồng đến
Luận văn tốt nghiệp

Trang 20
GVHD :Ths.Bùi Trọng Hiếu SVTH : Trương Nguyễn
Anh Thy
những yêu cầu dịch vụ cùng một lúc.Hình 1.2.1 cho thấy Servlet và JSP sử
dụng môi trường J2EE ứng dụng Web.








Get/requestURL
<HTML>…. </HTML>



















Sơ đồ 1.2.1 Một trình ứng dụng Web sử dụng Servlets,JSP và J2EE

2.> Giao thức HTTP và HTML
HTTP:
_ Giao thức HTTP cung cấp cách thức trò chuyện giữa trình khách ( thường
là trình duyệt Browser ) và trình chủ Server khá hiệu quả . Với giao thức HTTP
trình khách có thể gửi và yêu cầu trình chủ Web Server xử lý những lệnh sau :

Web

browser

Web server
Servlet Container
Servlets
JSP
pages

J2EE services
Databas
e


Other services
Luận văn tốt nghiệp

Trang 21
GVHD :Ths.Bùi Trọng Hiếu SVTH : Trương Nguyễn
Anh Thy
GET Yêu cầu trình chủ trả về nội dung một tài nguyên ,thường là tập
tin, theo địa chỉ định vị URL .
POST Chuyển dữ liệu từ trình khách lên trình chủ. Trình chủ tiếp nhận
dữ liệu ,tính toán và trả kết quả về cho trình khách
HEAD Yêu cầu trình chủ trả về thông tin mô tả của một tài nguyên (tập
tin) .
PUT Đưa một tài nguyên (tập tin ) lên trình chủ .
DELETE Yêu cầu trình chủ xoá một tài nguyên (tập tin ) nào đó .
_ Thường trong giao tiếp giữa trình khách và trình chủ Web Server ,chúng
ta chỉ dùng GET để lấy kết quả trả về từ trình chủ và POST để đưa dữ liệu từ
trình khách lên trình chủ xử lý .

Giao thức HTTP không lưu vết trạng thái trong giao dịch giữa trình khách
và trình chủ . Mỗi lần trình khách gửi yêu cầu và được trình chủ trả lời thì kết
nối chấm dứt . Vì lý do này giao thức HTTP còn gọi là giao thức phi trạng thái
(stateless protocol ).
 HTML
_ Dự án này sẽ sử dụng JSP làm ngôn ngữ phát triển chính .Vì vậy JSP
được thêm vào trong HTML
_ HTML ( HyperText Markup Language ) là hàng loạt các đoạn mã chuẩn
với các quy ước được thiết kế để tạo ra trang web , giúp tạo và chia sẻ các tài
liệu điện tử tích hợp đa phương tiện qua Internet và được hiển thị bởi những
trình duyệt Web . HTML cho phép áp dụng siêu liên kết cho tài liệu và trình
bày tài liệu với phông chữ , hình ảnh , kiểu gióng hàng phù hợp với hệ thống
hiển thị văn bản .
_ Có nhiều công cụ được dùng để tạo trang Web . Ví dụ : có thể tạo tập tin
HTML bằng Microsoft Word , NotePad trên Windows . Internet Explorer và
Luận văn tốt nghiệp

Trang 22
GVHD :Ths.Bùi Trọng Hiếu SVTH : Trương Nguyễn
Anh Thy
Netscape Navigator có công cụ soạn thảo đơn giản , cho phép tạo và hiệu chỉnh
tập tin HTML .
_ HTML tạo trang Web bằng cách sử dụng các thẻ quy ước như :
Thẻ cấu trúc : Định rõ cấu trúc của tài liệu .
Thẻ hình thức văn bản : Định rõ dạng hiển thị văn bản .
Có hai loại : thẻ nội dung và thẻ vật lý .
Thẻ đoạn văn bản : Định rõ tiêu đề , đoạn và dấu ngắt dòng.
Thẻ phông chữ : Định rõ cỡ chữ và màu chữ .
Thẻ danh sách : Định rõ các danh sách theo thứ tự hoặc không theo thứ tự
,và danh sách định nghĩa.

Thẻ bảng biểu : Xác định bảng biểu .
Thẻ liên kết : Định rõ các liên kết định hướng di chuyển đến tài liệu khác .
Thẻ hình ảnh : Định rõ vị trí truy cập hình ảnh và cách hiển thị hình ảnh
3.> JDBC
_ Nếu cơ sở dữ liệu có một trình điều khiển kết nối cơ sở dữ liệu bằng java
thông qua đó để thực hiện những câu lệnh SQL gọi là JDBC.JSP là ngôn ngữ
phát triển chính cho dự án này.Sử dụng trình điều khiển JDBC để giao tiếp với
một ứng dụng cơ sở dữ liệu để thông tin cơ sở dữ liệu có thể được phục hồi
,được cập nhật hoặc được xóa sử dụng trong trang JSP.
_ JDBC là giao thức của Java API dùng để thực hiện câu lệnh SQL .Nó
cung cấp tập hợp các lớp và giao diện cho phép phát triển các ứng dụng Java và
ứng dụng Web liên quan đến truy xuất cơ sở dữ liệu và hình 1.6.1 sẽ cho chúng
ta thấy cấu trúc chung của JDBC .Tương tác căn bản nhất của JDBC lệt kê sau
đây
Mở kết nối với cơ sở dữ liệu(open connection)
Thực thi các câu lệnh SQL(excute SQL)
Luận văn tốt nghiệp

Trang 23
GVHD :Ths.Bùi Trọng Hiếu SVTH : Trương Nguyễn
Anh Thy
Xử lý dữ liệu (Process results)
Đóng kết nối(close connection)


























Sơ đồ 1.6.1 The JDBC library structure
_ Theo đặt tả của sun có 4 kiểu JDBC sau :

Kiểu 1 : JDBC sử dụng cầu nối ODBC (JDBC-ODBC Bridge ) .
ODBC là cách kết nối đến mọi cơ sở dữ liệu thông qua trình quản lý
ODBC .Mỗi hệ cơ sở dữ liệu cung cấp một trình điều khiển (driver) có
khả năng đọc được cơ sở dữ liệu của chúng. Trình điều khiển này sẽ
được đăng ký với bộ quản lý ODBC .
Java Application
JDBC API
JDBC Driver Manager
JDBC

Driver
JDBC/ODBC
Bridge Driver
JDBC
Net
Driver

ODBC
Middleware
Databas
e

Databas
e

Databas
e

Luận văn tốt nghiệp

Trang 24
GVHD :Ths.Bùi Trọng Hiếu SVTH : Trương Nguyễn
Anh Thy
Các câu lệnh truy xuất cơ sở dữ liệu đều được thực thi bằng câu lệnh
SQL
Ngoài ra , Java còn cung cấp khả năng sử dụng JDBC để gọi ODBC .
Bằng cách này có thể kiểm soát được nhiều hệ quản trị cơ sở dữ liệu
khác nhau .





















Kiểu 2 : JDBC kết nối trực tiếp với các trình điều khiển cơ sở dữ liệu
JDBC sẽ kết nối trực tiếp với trình điều khiển đặc thù của mỗi hệ cơ sở
dữ liệu mà không phải qua trung gian ODBC . Do vậy kiểu kết nối này
nhanh và hiệu quả hơn , nhưng phải có trình điều khiển cơ sở đặc thù do
nhà phát triển cung cấp .








Java Application ,
Applet , Servlet
JDBC Driver
ODBC
Database driver
Cơ sở dữ liệu

JAVA

đặc thù
{

{
{
Java Application ,
Applet , Servlet
JDBC Driver
Database driver

JAVA

đặc thù
{

{

Luận văn tốt nghiệp

Trang 25
GVHD :Ths.Bùi Trọng Hiếu SVTH : Trương Nguyễn

Anh Thy








Kiểu 3 : JDBC kết nối thông qua các ứng dụng mạng trung gian .
Với kiểu kết nối này , máy chủ sẽ chịu trách nhiệm kết nối với cơ sở dữ
liệu. Máy khách chỉ sử dụng những trình điều khiển gọn nhẹ có khả
năng giao tiếp với ứng dụng trung gian qua Internet để truy vấn dữ liệu .



















Kiểu 4 : JDBC kết nối thông qua các trình điều khiển đặc thù từ xa .
Kiểu này cho phép máy khách sử dụng trình điều khiển gọn nhẹ nối kết
trực tiếp vào trình điều khiển cơ sở dữ liệu đặc thù trên máy chủ ở xa
thông qua mạng Internet .





Java Application ,
Applet , Servlet
JDBC Driver
Java Middle Ware
Java Native driver
Cơ sở dữ liệu

JAVA



JAVA

{

{

Internet

Java Application ,

Applet , Servlet
JDBC Driver

JAVA
{

Internet

Luận văn tốt nghiệp

Trang 26
GVHD :Ths.Bùi Trọng Hiếu SVTH : Trương Nguyễn
Anh Thy



























4.> SERVLETS,JAVASERVER PAGES VÀ JAVABEAN
 JavaServlets
I - Khái niệm java servlet
_ Java Servlet là một lớp đối tượng (.class).Mã nguồn của Servlet được
biên dịch ra mã byte-code của java.Servlet dễ sử dụng và phát triển những ứng
dụng Web nhanh hơn GGI.Servlet chạy tự động khi chúng được gọi từ trình
chủ (Web server).Servlet chạy toàn bộ trên máy ảo của Java ,xử lý và sinh mã
HTML trả về trình khách .Bằng cách này,Servlet có thể chạy trên rất nhiều
trình chủ hiểu Java và chúng không phụ thuộc vào trình duyệt (browser).Mô
hình 2.1.1 sẽ giúp chúng ta hiểu luồng thông tin từ HTTP yêu cầu servlet nó
được khởi tạo khi người sử dụng đang truy cập vào web site.
Luận văn tốt nghiệp

Trang 27
GVHD :Ths.Bùi Trọng Hiếu SVTH : Trương Nguyễn
Anh Thy




Get request

Post request















Sơ đồ 2.1.1 Luồng thông báo trong Web server với bộ chứa Servlet

II - Chu kỳ sống của servlet
_ Chu kỳ sống của Java Servlet được thiết kế theo hướng đối tượng đơn
giản bao gồm:sinh ra,hoạt động và chấm dứt .Khởi đầu thành phần đối tượng
Servlet được xây dựng và nạp vào bộ nhớ khi nhận được một yêu cầu từ trình
chủ .Sau đó chúng phục vụ liên tục hàng loạt các yêu cầu khác cho đến khi
phương thức service() hoàn tất tác vụ.Tại thời điểm này Servlet sẽ bị hủy giải
phóng khỏi bộ nhớ và hết tác dụng.
_ Điều này giải thích tại sao Servlets thay thế tuyệt vời và hoạt động
nhanh hơn ứng dụng GGI .Lý do Servlet chỉ cần nạp một lần và thường trực xử
lý yêu cầu ngay trong bộ nhớ.
_ Giao diện được khai báo cho sự thống nhất này là giao diện
javax.servlet.Servlet,giao diện Servlet được thiết kế bởi ba phương thức cơ bản

thể hiện cho chu kỳ sống.
Step 1:HTTP Request
makes a reques
HTTP
Reques
t

Step 4:Servlet can connect to a
database depending on the
request

Step2: Server sends the
request to Servlet Container
Web
Server
Servlet
Container
Step3:Servlet invokes the
sevice() method to handle the
request

Step 5:Servlet
sends back the
result

Data
base







Servlet

Service()
doGet()

doPost()

×