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

043_Xây dựng webservice và ứng dụng sử dụng webservice

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 (160.58 KB, 2 trang )

-24-

WEB SERVICE VÀ XÂY DỰNG ỨNG DỤNG SỬ DỤNG WEB SERVICE


Lê Trí Dũng
MSV: 0320066
Email:
Cán bộ hướng dẫn: PGS.TS. Nguyễn Văn Vỵ

1. Giới thiệu
Khóa luận sẽ xây dựng một ứng dụng bảng
tính trực tuyến chạy trên nền Web với hầu hết
các tính năng phổ biến của một chương trình
bảng tính, đồng thời phát huy thế mạnh của ứng
dụng trên nền web bằng cách tích hợp khả năng
lấy dữ liệu qua web service tự xây dựng riêng
theo chuẩn XML-RPC ( lấy giá chứng khoán,
tính tỷ giá giữa các loại tiền tệ… ) và các dữ
liệu này sẽ được tính toán như các dữ liệu bình
thường. Ngoài ra ứng dụng còn cho phép nhiều
người cùng thao tác trên cùng một bảng tính tại
cùng một thời điểm mà không bị xung đột về
dữ liệu giúp phát huy lợi thế làm việc nhiều
người từ bất cứ nơi nào của ứng dụng dựa trên
nền web.
2. Web service
Web services là một dạng ứng dụng Web
mới. Các ứng dụng này có các tính chất như:
độc lập, tự diễn tả, được mô đun hóa… Chúng
có thể được định vị và được triệu gọi thông qua


môi trường Web. Web services có thể thực hiện
các chức năng từ đơn giản tới các xử lý nghiệp
vụ phức tạp… Mỗi khi một Web service được
triệu gọi, các ứng dụng khác (hoặc các Web
services khác) có thể thấy được và triệu gọi
web service đã được triển khai đó.
Web Service dựa vào một loạt các chuẩn
chung, chẳng hạn như HTTP, XML, và SOAP
nên công việc trao đổi dữ liệu trở nên dễ dàng.
Nhờ các chuẩn chung, ta bảo đảm mọi hệ thống
đa dạng có thể trao đổi dữ liệu dễ dàng và suôn
sẽ. Có năm công nghệ mà các dịch vụ Web vận
dụng : XML, SOAP, WSDL, DISCO và UDDI.
RPC( Remote Procedure Call ) là sự mở
rộng của lời gọi hàm (procedure call) theo cách
cổ điển. Giờ đây hàm cần gọi và nơi gọi hàm có
thể nằm ở 2 máy tính khác nhau, cách xa nhau
và được nối với nhau qua mạng internet.

RPC
là nền tảng của lập trình phân tán (distributed
programming). Các giao thức xây dựng trên
RPC đã xuất hiện từ rất lâu. Có rất nhiều các
cài đặt khác nhau của RPC :XML-RPC,
CORBA, DCOM, SOAP.

3. Dojo toolki
Dojo toolkit là một dự án mã nguồn mở, là
một toolkit DHTML được viết bằng javascript .
Nói cách khác thì Dojo chính là một tập hợp

các thư viện về Javascript.Dojo toolkit hướng
đến việc giải quyết các vấn đề đã tồn tại từ lâu
đối với DHTML ví như sự không tương thích
của các trình duyệt khác nhau…Vì dojo toolkit
là công nghệ phía client nên nó có thể kết hợp
với bất kì server chạy trên công nghệ nào.
Các tính năng chính của Dojo toolkit:
- Dojo cung cấp mạnh về Ajax dựa
trên sự trừu tượng IO. Nó quản lý sự
truyền thông không đồng bộ thông
qua việc sử dụng đối tượng
XMLHttpRequest.

- Dojo cung cấp một hệ thống sử lý
các sự kiện cả trước lẫn sau khi sự
kiện xảy ra.Nó được gọi là hệ thống
sự kiện hướng bộ phận.

- Dojo cung cấp sự theo dõi dựa trên
việc xây dựng giao diện người dùng
thông qua các widget. Bạn có thể
xây dựng và sử dụng các widget mà
bạn tự xây dựng lên hay của bất kỳ
người nào khác xây dựng lên.

- Dojo hỗ trợ tạo hình ảnh chuyển
động, thêm vào nữa là Dojo toolkit
đi kèm với rất nhiều thư viện
Javascript hữu ích.
4. Ứng dụng bảng tính trên nền Web

-25-

Bảng tính trực tuyến là một ứng dụng dựa
trên nền web. Ứng dụng có những chức năng
đặc trưng của một ứng dụng bảng tính :
- Tính toán số học dựa trên các phép
tính cơ bản
- Hỗ trợ tính toán nhanh bằng các
hàm được viết sẵn
- Hỗ trợ vẽ biểu đồ phục vụ các báo
cáo
- Hỗ trợ lưu nội dung, tải nội dung
bảng tính từ file

Ngoài ra ứng dụng còn có các tính năng nổi
bật khác
- Hỗ trợ lấy dữ liệu tự động từ server
thông qua chuẩn XML - RPC theo
thời gian thực như lấy giá chứng
khoán của một công ty , qui đổi giá
trị giữa các loại tiền tệ lưu thông
trên thế giới.
- Hỗ trợ làm việc nhiều người cùng
một lúc trên cùng một bảng tính .

Ứng dụng gồm có 2 phần chính, một phần
hiển thị bảng tính và thao tác với người dùng
thông qua trình duyệt, phần này được viết bằng
Javascript có sử dụng Dojo toolkit. Một phần
chạy phía server tiếp nhận yêu cầu của người

dùng : mở file, lưu file bảng tính hay xử lý các
thao tác trên bảng tính phía người dùng .Mọi
thao tác phía người dùng đều được gửi về
server để xử lý.
Client được viết dưới dạng các widget của
Dojo. Gồm hai widget là Spreadsheet và
Spreadsheetsheet
Server sẽ lưu toàn bộ thao tác của người sử
dụng như : nhập dữ liệu, nhập công thức , tính
toán số học thuần túy…
Để làm được việc này, server sẽ quản lý
bảng tính bằng cách chia một file bảng tính có
thể chứa nhiều Sheet, và mỗi Sheet lại chứa
nhiều Cell. Cell chính là đơn vị nhỏ nhất của
bảng tính, trong Cell có thể chứa dữ liệu dạng
văn bản, dạng số hay có thể là lưu trữ một công
thức được tính toán thông qua các ô khác hoặc
có thể là một hàm được ứng dụng hỗ trợ.
Để thực hiện tính toán dữ liệu trên từng
bảng tính sau đó trả kết quả về cho người sử
dụng, ta xây dựng lớp FomularEvaluation lớp
này phụ trách thực hiện tính toán cũng như trả
kết quả về theo định dạng XML cho client xử
lý.
Ứng dụng cho phép người dùng gọi các
dịch vụ do server cung cấp thông qua các hàm
mẫu như: getstock(), exchangerate(). Cụ thể ở
đây là dịch vụ lấy thông tin về chứng khoán và
chuyển đổi giữa các loại tiền tệ. Service sẽ lấy
thông tin chứng khoán và tỷ giá giữa các loại

tiền tệ trực tiếp từ hệ thống máy chủ của Yahoo
tại thời điểm thực bằng cách phân tích dữ liệu
trả về trong file .csv được lấy theo địa chỉ


CHỨNG KHOÁN]&f=sl1d1t1c1ohgv&e=.csv

5. Kết luận
Trong khóa luận này, tôi đã xây dựng thành
công một ứng dụng dựa trên nền web đó là ứng
dụng bảng tính điện tử. Ứng dụng đã tận dụng
được những ưu điểm của một ứng dụng chạy
trên mạng internet đó là không yêu cầu máy có
cấu hình cao, dễ sử dụng, tận dụng được tài
nguyên từ internet(lấy giá chứng khoán từ
Yahoo…).
Hướng phát triển tiế
p theo: ứng dụng sẽ
được cải thiện và có thêm tính năng quan trọng
là cho phép người dùng đăng kí tài khoản sử
dụng, mỗi người sẽ có một tài khoản riêng ,
quản lý file riêng. Có khả năng xuất dữ liệu ra
file .xls theo định dạng của Excel hay theo định
dạng của OpenOffice.
Tài liệu tham khảo
[1] (Trang chủ của
Dojo toolkit)

[2] /> ( Trang chủ
mô tả chuẩn XML - RPC)


[3] (Diễn đàn về
công nghệ thông tin của Việt Nam)

[4] (Trang web từ
điển bách khoa)

[5] /> (Trang web
về tài chính của Yahoo)

×