Mô hình hệ thống của ứng dụng

Một phần của tài liệu Phát triển ứng dụng phần mềm trên máy chủ dựa trên công nghệ Java (Trang 91)

Mô hình hệ thống tổng thể của ứng dụng được thể hiện trong mô hình sau:

Bộ chứa Web 1 1 Bộ Chứa EJB

Danh sách HH TX Controller TX

tồi khoản 1 MUl session bean entity bean Ỉ

Nhật ký 1 tài khoan 1 i p " Chuyển tíén " 1 Trtnh

duyệt ™ Account Controller m session bean entity bean Account m

\ \

ATM d Customer Controller

I

Customer

'

Trong hình trên, có thể thấy ngay rằng việc truy nhập của người sử dụng tới các Entity Bean đều được thực hiện thông quan Session Bean (sử dụng khuôn mẫu Session Bao Ngoài). Trong bộ chứa EJB, Session Bean là sử dụng các dịch vụ do Entity Bean cung cấp. Các Entity Bean thực hiện việc truy nhập vào cơ sở dừ liệu và cơ sở dừ liệu có nhiệm vụ lưu trữ các dừ liệu của Entity Bean.

4.2.2.1.1 Các thành phần Session Bea/t

Trong ứng dụng ngân hàng điện tử này có 3 thành phần Session Bean là AccountControllerEJB, CustomerControllerEJB và TXControllerEJB. Các Session Bean này cung cấp một giao diện của Logic nghiệp vụ cho các ứng dụng khách. Toàn bộ Logic nghiệp vụ của ứng dụng được che dấu không cho các ứne dụng khách có thể nhìn thấy.

AccountControllerEJB: Session Bean này có nhiệm vụ thực hiện việc tạo và hủy bỏ các tài khoản, quản lý mối quan hệ giữa tài khoản và khách hàng, lấy các thông tin về tài khoản

Các phương thức thực hiện việc tạo và hủy bỏ các tài khoản là c r e a t e A c c o u n t ( )

r e m o v e A c c o u n t Q . Các phương thức này thực hiện việc gọi các phương thức

c r e a t e ( )r e m o v e ị ) của A c c o u n tE J B .

Việc quản lý quan hệ giữa tài khoản và khách hàng được thực hiện thông qua phương thức a d d C u s t o m e r T o A c c o u n tQr e m o v e C u s t o m e r F r o m A c c o u n t ( ) . Quan

hệ giữa tài khoản và khách hàng là quan hệ nhiều-nhiều. Một tài khoản có thể được cùng sử dụng bởi nhiều khách hàng và ngược lại một khách hàng có thể có nhiều tài khoản khác nhau.

Các thông tin về tài khoản được lấy thông qua các phương thức

g e t A c c o u n t s O f C u s t o m e r ( )g e tD e ta i ls ( ) . Phương thức g e t A c c o u n t s O f C u s t o m e r ( )

trả lại tất cả các tài khoản của một khách hàng bằng cách gọi phương thức

f ì n d B y C u s t o m e r ( ) của A c c o u n t E J B . Thay vì cài đặt các phương thức lấy giá trị của

- 9 2 -

từng thuộc tính của mỗi tài khoản, phương thức g e t D e t a i l s ( ) trả lại đối tượng

A c c o u n tD e t a i ls . Đối tượng này đóng gói toàn bộ các thông tin của A c c o u n tE J B .

Như vậy, thay vỉ nhiều lời gọi hàm từ xa để lấy các thông tin ứng dụng khách chỉ cần thực hiện một lời gọi hàm từ xa là đủ (sử dụng khuôn mẫu đối tượng giá trị).

CustomerControllerEJB: do mối quan hệ giữa tài khoản và khách hàng được

quản lý với A c c o u n t C o n t r o l l e r E J B , vì vậy, thành phần này tương đối đơn giản.

Thành phần này thực hiện việc tạo một khách hàng với phương thức

c r e a t e C u s t o m e r ( ) và hủy bỏ một khách hàng với r e m o v e C u s to m e r Q . Ngoài ra,

thành phần này còn có phương thức g e t C u s t o m e r s O f A c c o u n t ( ) trả lại danh sách

khách hàng của một tài khoản và g e t C u s t o m e r s O f L a s t N a m e ( ) trả lại danh sách

khách hàng tên được chỉ ra.

TxControllcrEJB thực hiện việc xử lý các giao dịch ngân hàng. Ngoài các phương thức lấy dừ liệu như g e t T x s O f A c c o u n t ( )g e t D e t a i l s ị'), thành phần này

cung cấp một số phương thức làm thay đổi số dư của tài khoản như: • w i t h d r a w ( ) \ rút tiền

d e p o s itQ : gửi tiền

t r a n s f e r F u n d ( ) \ chuyển tiền

4.2.2.1.2 Các thành phần E n tity Bean

Trong ứng dụng này cũng có 3 thành phần Entity Bean là: • AccountEJB

• CustomerEJB • TxEJB

Các thành phần này được sử dụng để tạo một mô hình hướng đối tượng cho cơ sở dừ liệu. Khác với các thành phần Session Bean, các phương thức của thành phần này không thực hiện việc kiểm tra tính họp lệ của dữ liệu. Mọi việc kiểm tra dữ liệu

dược thực hiện bởi các Session Bean và các ứng dụng khách chỉ truy nhập đến các đối tượng này thông qua Session Bean mà thôi.

4.2.2.2 Các thành phần Web

Trong ứng dụng này, người sử dụng dùng các trình duyệt Web truy nhập tới các Web site để lấy các thông tin về tài khoản, khách hàng và thực hiện các giao địch trên các tài khoản. Sau đây là bảng các URL, các JSP tương ứng, và các thành phần hồ trợ khác được sử dụng bởi người sử dụng:

C h ứ c năng URL J S P Jav aB ean

Trang chủ /main main, jsp

Đăng nhập và dăng xuất /logon /logonError /logoff logon, jsp logonError. jsp logoff, jsp Danh sách tài

khoản /accountList accountList. jsp

Nhật ký tài khoản /accountHist accountHist. jsp AccountHistoryBean

Chuyển tiền giữa các tài khoản

/transferFunds /transferAck

transferFunds. jsp

transferAck. jsp TransferBean

Xử lý lỗi /error error, jsp

Trong ứng dụng này, để đảm bảo tính dể bảo trì ứng dụng các JSP sử dụng khuôn mầu bộ trợ giúp vùng nhìn với các thẻ JSP và các JavaBean. Hơn thế nữa, đế đảm bảo tính thống nhất của các trang Web, khuôn mẫu vùng nhìn đa hợp được sử dụng ở đây. Vùng nhìn đa hợp lại được tạo thành bởi 3 thành phần:

• template.jsp xác định cấu trúc của mỗi trang Web. Thành phần này sử dụng thẻ insert để tạo thành toàn bộ trang

• screendefinitions.jsp định nghTa các thành phần con được sử dụng bởi mỗi trang Web. Mọi trang Web đều phải có chung vùng tiêu đề nhưng khác nhau ở nội dung của chúng

- 9 4 -

• Dispatcher là một Servlet thực hiện nhận mọi yêu cầu từ người sử dụng và chuyển tới template. jsp (khuôn mầu bộ điều khiển trước)

Tóm lại, phần này đã xem xét một ứng dụng được phát triển với công nghệ J2EE. ứ n g dụng này sử dụng mô hình đa mức của J2EE với kiến trúc MVC. Mô hình của ứng dụng được cài đặt bane Entity Bean và các Session Bean thực hiện vai trò bao ngoài. Toàn bộ phần hiện thị của ứng dụng được thực hiện bang JSP với sự trợ giúp của JavaBean và các thẻ JSP. Bộ điều khiển của ứng dụng sử dụng một Servlet với vai trò là bộ điều khiển trung tâm. Như vậy, thông qua ứng dụng này cũng thấy được các khuôn mẫu phát triển có thể hỗ trợ việc phát triển ứng dụng như thế nào.

KÉTLUẬN

Sự phát triên của Internet nói riêng và của công nahệ thông tin nói chung đans diễn ra rất mạnh mẽ tại Việt nam trong thời gian gần đây cũng như trong tương lai. Sự phát triển này đòi hỏi các công ty, các tổ chức cần xây dựng các ứng dụng của mình trên Internet. Có rất nhiều công nghệ khác nhau giúp phát triển các ứng dụng này. Luận văn này xem xét một trong các công nghệ đang được phát triển rất mạnh mẽ trong thời gian gần đây đó là công nghệ J2EE. Đe đáp ứng nhu cầu này luận văn “ Phát triển ứng dụng phần mềm trên máy chủ dựa trên công nghệ Java” đề cập đến các nội dung sau:

• Các công nghệ J2EE và công nghệ này giúp giải quyết các vấn đề đặt ra đối với các ứng dụng mức xí nghiệp như thế nào.

• Các thành phần Enterprise Bean có nhiệm vụ thực hiện việc mô hình hóa thế giới thực trong các phần mềm ứng dụng

• Các thành phần JSP và Servlet thực hiện chức năng quản lý giao diện với người sử dụng

• Kiến trúc MVC (Mô hình- Vùng nhìn - Bộ điều khiển) • Các khuôn mẫu phát triển thường dùng với J2EE

Do nội dung có hạn của luận văn vì vậy luận văn này chưa đề cập đến được một cách chi tiết các khuôn mẫu trong J2EE. Hơn nữa việc sử dụng các khuôn mẫu phát triển của J2EE trong từng mô hình ứng dụng cụ thể cũng chưa đề cập tới. Ví dụ các khuôn mẫu nào thường được sử dụng trong các ứng dụng thương mại điện tử B2C, hay ứng dụng trao đổi giữa các doanh nghiệp B2B chưa được đề cập tới trong luận văn này. v ấ n đề này là hướng phát triển của luận văn sau này.

- 9 6 -

TÀI LIỆU THAM KHẢO*

Ti ến g Việt:

[1 ] Nguyễn Phương Lan, Hoàng Đức Hải (2001), Lập trình ứng dụng Web với

JSP/Servlet, Nhà xuất bản Giáo dục, TP. Hồ Chí Minh, tr. 55-74.

T iế n g Anh:

[2 ] Ed Roman (1999), Mastering Enterprise JavaBean and the Java 2 Platform -

Enterprise Edition, Wiley Computer Publishing, America, pp. 71-260.

[3 ] Floyd Marinescu (2002), EJB Design Pattern, Wiley Computer Publishing,

America, pp. 5-11.

[4] Inderjeet Singh, Beth Steams, Mark Johnson (2002), Designing Enterprise

Application with the J2EE platform; Addison-Wesley, America, pp. 14-20, pp. 82-91, pp. 113-121, pp. 347- 384.

[5] Osamu Takagiwa, Adrian spender, Anthony Stevens, Julien Bouyssou

(200 \), Programming J2EE APIs with WebSphere Advanced, IBM Corp.,

America, pp. 165 - 250.

[6] Ueli Wahli, Alex Matthews, Paula Coll Lapido, Jean-Pierre Norguet (2001),

Web sphere Version 4 Application Development Handbook; IBM Corp.,

Một phần của tài liệu Phát triển ứng dụng phần mềm trên máy chủ dựa trên công nghệ Java (Trang 91)

Tải bản đầy đủ (PDF)

(97 trang)