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

Luận án xây dựng hệ thống hỗ trợ thông tin trên điện thoại di độ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.32 MB, 27 trang )

Xây
Xây
dựng
dựng
hệ
hệ
thống
thống
m
m
-
-
Commerce
Commerce
-
-
Hỗ
Hỗ
trợ
trợ
thông
thông
tin
tin
tuyển
tuyển
sinh
sinh
trên
trên
điện


điện
thoại
thoại
di
di
động
động
áp
áp
dụng
dụng
Java
Java
SVTH: Lê Ngọc Quốc Khánh
GVHD: ThS. Tân Hạnh
GVHD: ThS Tân Hạnh SVTH: Lê Ngọc Quốc Khánh
1
PTIT-HCM
App
App
Nội
Nội
dung
dung
báo
báo
cáo
cáo

Khái niệm thương mại di động


Các phiên bản của Java

J2ME

Web Service và MIDP

Hệ thống hỗ trợ tuyển sinh
GVHD: ThS Tân Hạnh SVTH: Lê Ngọc Quốc Khánh
2
PTIT-HCM
App
App
Thương
Thương
mại
mại
di
di
động
động




?
?

Đònh nghóa Mobile Commerce (m-
commerce)?


Các giải pháp m-commerce:
 Mua bán số (digital purchase)
 Ngân hàng di động (mobile banking)
 Dòch vụ thông tin (information service)
 Dòch vụ dựa trên vò trí (location-based service)
 Mua sắm di động (mobile shopping)
 Quảng cáo di động (mobile advertising)
GVHD: ThS Tân Hạnh SVTH: Lê Ngọc Quốc Khánh
3
PTIT-HCM
App
App
Java
Java


các
các
phiên
phiên
bản
bản
nào
nào
?
?
GVHD: ThS Tân Hạnh SVTH: Lê Ngọc Quốc Khánh
4
PTIT-HCM

App
App
J2ME
J2ME




?
?

Java 2 platform Micro Edition.

Mục đích của J2ME?

Ứng dụng J2ME được gọi là MIDlet (MIDP
Applet) với MIDP là Mobile Information
Device Profile.

Các dạng ứng dụng J2ME?
Hiện trạng
Hiện trạng
Cấu hình
Cấu hình
Máy ảo
Máy ảo
Phần cứng/HĐH
Phần cứng/HĐH
MIDP
MIDP

CLDC
CLDC
“K” Virtual Machine
“K” Virtual Machine
Cell Phone, PDA,
Cell Phone, PDA,
GVHD: ThS Tân Hạnh SVTH: Lê Ngọc Quốc Khánh
5
PTIT-HCM
App
App
So
So
sánh
sánh
J2ME
J2ME


WAP (Wireless
WAP (Wireless
Application Protocol)
Application Protocol)
Bảo mật WTLS (Transport
Layer Security)
Bảo mật SSL (Secure
Sockets Layer)
Luôn cần thời gian onlineChỉ trao đổi dữ liệu khi
cần thiết. Có thể offline
Giao diện ứng dụng được

load khi sử dụng
Toàn bộ giao diện ứng
dụng load về thiết bò trước
Ứng dụng dạng trình duyệtỨng dụng dạng chương
trình -> linh động, phong
phú hơn.
WAPJ2ME
GVHD: ThS Tân Hạnh SVTH: Lê Ngọc Quốc Khánh
6
PTIT-HCM
App
App
Thiết
Thiết
kế
kế
ứng
ứng
dụng
dụng
không
không
dây
dây
gặp
gặp
những
những
khó
khó

khăn
khăn


?
?

Ràng buộc thiết kế (Design Contraint)

Truyền thông điệp

HTTP là giao thức truyền thông điệp cơ bản

Thiết kế đònh dạng thông điệp. Tối ưu hóa bằng proxy

Chiến lược trình diễn

Thực hiện kiểm tra ở phía client

Cung cấp biểu thò diễn tiến

Cho phép ngắt hoạt động

Cá nhân hóa ứng dụng
Nhò phân
tối ưu hóa
Nhò phân
tối ưu hóa
Đối tượng
tuần tự hóa

Đối tượng
tuần tự hóa
XML
XML
XML-RPC
XML-RPC
SOAP
SOAP
Kích thước ứng dụng
Tính tự mô tả
Tiêu thu băng thông
Sức mạnh xử lý
GVHD: ThS Tân Hạnh SVTH: Lê Ngọc Quốc Khánh
7
PTIT-HCM
App
App
Web Service
Web Service


MIDP
MIDP
Internet
Internet
HTTP/SOAP
HTTP/SOAP
HTTP/SOAP
HTTP/Binary
HTTP/Binary

Web
Services
Client
Web
Services
Client
Proxy Server/
WBXML Gateway
J2ME Client
J2ME Client
GVHD: ThS Tân Hạnh SVTH: Lê Ngọc Quốc Khánh
8
PTIT-HCM
App
App
Hệ
Hệ
thống
thống
hỗ
hỗ
trợ
trợ
tuyển
tuyển
sinh
sinh

Giới thiệu


Cấu hình của hệ thống

Chức năng ứng dụng, thành phần phía server

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

Thiết kế cơ sở dữ liệu

Module xử lý phía client | Chi tiết

Module xử lý phía server

Hiệu suất của ứng dụng

Demo chương trình

Tổng kết và nhận xét
GVHD: ThS Tân Hạnh SVTH: Lê Ngọc Quốc Khánh
9
PTIT-HCM
App
App
Giới
Giới
thiệu
thiệu

Giới thiệu: Mục tiêu của chương trình là giúp thí sinh,
phụ huynh truy xuất các thông tin cần thiết về công
tác tuyển sinh nếu họ có điều kiện sở hữu một chiếc

điện thoại di động hỗ trợ ứng dụng Java.
GVHD: ThS Tân Hạnh SVTH: Lê Ngọc Quốc Khánh
10
PTIT-HCM
App
App
Cấu
Cấu
hình
hình
của
của
hệ
hệ
thống
thống

Cấu hình phần cứng:

Client: Điện thoại di động hỗ trợ Java và mạng

Server: Máy chủ đủ mạnh để chạy Java

Cấu hình phần mềm:

Hệ điều hành: Bất kỳ HĐH nào hỗ trợ Java. Cài đặt
các phần mềm sau:

Java 2 SDK 1.4 trở lên


Java Web Service Developer Pack 1.2 trở lên

Microsoft SQL Server 2000 Driver for JDBC

Máy chủ DBMS cài đặt Microsoft SQL Server 2000

Để phát triển ứng dụng:

J2ME Wireless Toolkit 2.0

Các thư viện mã nguồn mở kSOAP và kXML của
Enhydra
GVHD: ThS Tân Hạnh SVTH: Lê Ngọc Quốc Khánh
11
PTIT-HCM
App
App
Chức
Chức
năng
năng
của
của
ứng
ứng
dụng
dụng
Màn hình giới
thiệu
Màn hình giới

thiệu
Màn hình chức
năng chính
Màn hình chức
năng chính
Thông tin
trường
Thông tin
trường
Giải đáp thông
tin
Giải đáp thông
tin
Tìm
hồ sơ
Tìm
hồ sơ
Xem kết
quả tuyển
sinh
Xem kết
quả tuyển
sinh
Liên hệ
Liên hệ
Giúp
đỡ
Giúp
đỡ
GVHD: ThS Tân Hạnh SVTH: Lê Ngọc Quốc Khánh

12
PTIT-HCM
App
App
Chi
Chi
tiết
tiết
các
các
chức
chức
năng
năng
chính
chính
Giải đáp thông
tin
Giải đáp thông
tin
Đối
tượng
Đối
tượng
Khu vực
Khu vực
Đợt thi
Đợt thi
Giải đáp
KVƯT

Giải đáp
KVƯT
Nhập dữ
kiện tìm
KVƯT
Nhập dữ
kiện tìm
KVƯT
Kết quả tìm
KVƯT
Kết quả tìm
KVƯT
Thông tin
trường
Thông tin
trường
Danh sách
trường đầy đủ
Danh sách
trường đầy đủ
Tìm trường
Tìm trường
Nhập dữ kiện tìm trường
Nhập dữ kiện tìm trường
Danh sách các trường tìm được
Danh sách các trường tìm được
Chi tiết của trường
Chi tiết của trường
Chi tiết các ngành tuyển
Chi tiết các ngành tuyển

Chi tiết của ngành
Chi tiết của ngành
Tìm hồ sơ
Tìm hồ sơ
Nhập dữ kiện
tìm hồ sơ
Nhập dữ kiện
tìm hồ sơ
Danh sách hồ sơ
tìm thấy
Danh sách hồ sơ
tìm thấy
Danh sách nguyện
vọng
Danh sách nguyện
vọng
Chi tiết thi cử
của nguyện
vọng
Chi tiết thi cử
của nguyện
vọng
Xem kết quả
tuyển sinh
Xem kết quả
tuyển sinh
Nhập dữ kiện tìm
kết quả
Nhập dữ kiện tìm
kết quả

Danh sách kết
quả tìm thấy
Danh sách kết
quả tìm thấy
Liên
hệ
Liên
hệ
Nhắn
tin SMS
Nhắn
tin SMS
Gởi
mail
Gởi
mail
Giúp đỡ
Giúp đỡ
GVHD: ThS Tân Hạnh SVTH: Lê Ngọc Quốc Khánh
13
PTIT-HCM
App
App
Các
Các
thành
thành
phần
phần
phía

phía
server
server
 Các thành phần phía server:

Proxy Servlet: Proxy servlet đảm nhận chức
năng môi giới.

JAX-RPC Web Service: JAX-RPC (Java API
for XML-based Remote Procedure Call) service
cung cấp dòch vụ gọi hàm từ xa.

SQL Server DBMS
 Giao thức của hệ thống: SOAP (Simple
Object Access Protocol)
GVHD: ThS Tân Hạnh SVTH: Lê Ngọc Quốc Khánh
14
PTIT-HCM
App
App


hình
hình
của
của
hệ
hệ
thống
thống

Java/J2ME Client
Java/J2ME Client
LCDUI
(User
Interface)
LCDUI
(User
Interface)
GCF
(Networking)
GCF
(Networking)
MIDlet
MIDlet
Java/J2EE Proxy Server
Java/J2EE Proxy Server
Web Container
Web Container
Proxy
Servlet
Proxy
Servlet
SOAP/ WBXML/
HTTP
Java/J2EE Web service Server
Java/J2EE Web service Server
JDBC
JDBC
Web Service
Web Service

Java Mail
Java Mail
Enroll
Service
Enroll
Service
Ties
Ties
JAX-RPC
Runtime
JAX-RPC
Runtime
SOAP/ XML/
HTTP
DBMS
DBMS
SQL
Server
SQL
Server
Pre
sen
tati
on
tier
Business tier
Per
sist
ene
t

tier
GVHD: ThS Tân Hạnh SVTH: Lê Ngọc Quốc Khánh
15
PTIT-HCM
App
App
Internet
Internet
HTTP/SOAP
HTTP/SOAP
HTTP/Binary
HTTP/Binary
Proxy Server/
WBXML
Gateway
J2ME Client
J2ME Client
Enroll Service
(JAX-RPC)
DBMS
DBMS
Diễn
Diễn
tiến
tiến
trao
trao
đổi
đổi
thông

thông
tin
tin
giữa
giữa
client
client


server
server
1
1
1
1
1
1
Client gởi SOAP request đến proxy
dưới dạng XML nén nhò phân
2
2
2
2
Proxy servlet giải nén SOAP request
thành dạng văn bản
3
3
3
3
Proxy servlet gởi SOAP Request đến

dòch vụ Web
5
5
5
5
Dòch vụ Web hồi đáp SOAP
Response về cho proxy servlet
6
6
6
6
Proxy Servlet nén SOAP Response
thành dạng XML nhò phân
7
7
7
7
7
7
Proxy servlet trả hồi đáp về cho
J2ME Client ở dạng XML nhò phân
4
4
4
4
Enroll Service truy xuất cơ sở dữ
liệu
GVHD: ThS Tân Hạnh SVTH: Lê Ngọc Quốc Khánh
16
PTIT-HCM

App
App
Thiết
Thiết
kế
kế


sở
sở
dữ
dữ
liệu
liệu
GVHD: ThS Tân Hạnh SVTH: Lê Ngọc Quốc Khánh
17
PTIT-HCM
App
App
Module
Module
xử
xử


phía
phía
client
client
Chi tiết

GVHD: ThS Tân Hạnh SVTH: Lê Ngọc Quốc Khánh
18
PTIT-HCM
App
App
Chi
Chi
tiết
tiết
các
các
module
module
phía
phía
client
client

EnrollMIDlet.java

ListMain.java

ExplainScreen.java
GVHD: ThS Tân Hạnh SVTH: Lê Ngọc Quốc Khánh
19
PTIT-HCM
App
App
Chi
Chi

tiết
tiết
các
các
module
module
phía
phía
client (
client (
tt
tt
)
)

UnivList.java

FindRecordScreen.java

ViewMarkScreen.java

ContactScreen.java
Gọi phương thức findUniv() gởi
vào phương thức này tham số
index là STT của tập kết quả và
maxCount là số kết quả tối đa
Gọi phương thức findUniv() gởi
vào phương thức này tham số
index là STT của tập kết quả và
maxCount là số kết quả tối đa

SoapProcessor tạo thông điệp
SOAP, thêm các property tương
ứng (có property index và
maxCount), chuyển thành luồng
byte ở dạng WBXML
SoapProcessor tạo thông điệp
SOAP, thêm các property tương
ứng (có property index và
maxCount), chuyển thành luồng
byte ở dạng WBXML
SoapProcessor gọi
HttpPoster gởi luồng
byte đến serverURL
SoapProcessor gọi
HttpPoster gởi luồng
byte đến serverURL
HttpPoster gọi phương thức
receiveHttpResponse để xử
lý luồng byte hồi đáp
HttpPoster gọi phương thức
receiveHttpResponse để xử
lý luồng byte hồi đáp
Gọi SoapProccessor xử lý luồng
byte nhận được thành
SoapEnvelope
Gọi SoapProccessor xử lý luồng
byte nhận được thành
SoapEnvelope
Gọi phương
displayFindResult() để

hiển thò kết quả
Gọi phương
displayFindResult() để
hiển thò kết quả
findUnivResponse


Các Response
khác
Xét SoapEnvelope
chứa hồi đáp gì
Xét SoapEnvelope
chứa hồi đáp gì
Phân tích có đang
ở tập kết quả đầu
tiên hay không?
Phân tích có đang
ở tập kết quả đầu
tiên hay không?
Hiện dòng đầu tiên: Bạn
đang ở đầu danh sách
Hiện dòng đầu tiên: Bạn
đang ở đầu danh sách
Hiện dòng đầu tiên: Xem
tập kết quả trước đây
Hiện dòng đầu tiên: Xem
tập kết quả trước đây
Phân tích có đang
ở tập kết quả cuối
cùng hay không?

Phân tích có đang
ở tập kết quả cuối
cùng hay không?
Hiện dòng cuối cùng: Bạn
đang ở cuối danh sách
Hiện dòng cuối cùng: Bạn
đang ở cuối danh sách
Hiện dòng cuối cùng: Xem
tập kết quả tiếp theo
Hiện dòng cuối cùng: Xem
tập kết quả tiếp theo
Duyệt mảng kết quả và
hiển thò
Duyệt mảng kết quả và
hiển thò


Không

Không
Người dùng kích hoạt
một dòng trong danh
sách trường
Người dùng kích hoạt
một dòng trong danh
sách trường
Có phải kích hoạt
dòng đầu tiên hay
không?
Có phải kích hoạt

dòng đầu tiên hay
không?
index = index
Gọi phương thức
findUniv() với tham số
index vừa được giảm để
lấy tập kết quả trước
index = index
Gọi phương thức
findUniv() với tham số
index vừa được giảm để
lấy tập kết quả trước
Có phải đang ở đầu
danh sách hay không?
Có phải đang ở đầu
danh sách hay không?
Hiển thò thông báo bạn
đang ở đầu danh sách
Hiển thò thông báo bạn
đang ở đầu danh sách
Có phải kích hoạt dòng
cuối cùng hay không?
Có phải kích hoạt dòng
cuối cùng hay không?
index = index++
Gọi phương thức
findUniv() với tham số
index vừa được tăng để
lấy tập kết quả tiếp theo
index = index++

Gọi phương thức
findUniv() với tham số
index vừa được tăng để
lấy tập kết quả tiếp theo
Có phải đang ở cuối
danh sách hay không?
Có phải đang ở cuối
danh sách hay không?
Hiển thò thông báo bạn
đang ở cuối danh sách
Hiển thò thông báo bạn
đang ở cuối danh sách
Gọi getUnivDetail() lấy
thông tin chi tiết của
trường được kích hoạt
Gọi getUnivDetail() lấy
thông tin chi tiết của
trường được kích hoạt
Không


Không


Không
Không
GVHD: ThS Tân Hạnh SVTH: Lê Ngọc Quốc Khánh
20
PTIT-HCM
App

App
Chi
Chi
tiết
tiết
các
các
module
module
phía
phía
client (
client (
tt
tt
)
)

HttpPoster.java

HttpPosterListener.java

SoapProcessor.java

ProgressIndicator.java

ProgressListener.java

MessageBox.java
Tạo bộ ghi WbxmlWriter

xw vào
ByteArrayOutputStream bos
Tạo bộ ghi WbxmlWriter
xw vào
ByteArrayOutputStream bos
Gán các bảng Index
cho xw
Gán các bảng Index
cho xw
Gọi hàm tạo
SoapProcessor(SoapObjec
t soapMethod, String
charSet)
Gọi hàm tạo
SoapProcessor(SoapObjec
t soapMethod, String
charSet)
Tạo đối tượng SoapEnvelope
soapEnvelope. Gán body
của soapEnvelope bằng
soapMethod
Tạo đối tượng SoapEnvelope
soapEnvelope. Gán body
của soapEnvelope bằng
soapMethod
Ghi soapEnvelope vào bos
bằng bộ ghi xw bằng cách
gọi phương thức
soapEnvelope.write(xw)
Ghi soapEnvelope vào bos

bằng bộ ghi xw bằng cách
gọi phương thức
soapEnvelope.write(xw)
Chuyển bos thành mảng
byte bằng phương thức
bos.toByteArray(). Kết quả ta
được mảng byte chứa tài
liệu WBXML
Chuyển bos thành mảng
byte bằng phương thức
bos.toByteArray(). Kết quả ta
được mảng byte chứa tài
liệu WBXML
Tạo đối tượng SoapEnvelope
soapEnvelope. Lấy luồng byte
nhập vào ByteArrayInputStream
bis
Tạo đối tượng SoapEnvelope
soapEnvelope. Lấy luồng byte
nhập vào ByteArrayInputStream
bis
Tạo bộ phân tích
WbxmlParser parser
cho luồng byte nhập
Tạo bộ phân tích
WbxmlParser parser
cho luồng byte nhập
Gọi hàm tạo
SoapProcessor(byte[]
response, String charSet)

Gọi hàm tạo
SoapProcessor(byte[]
response, String charSet)
Gán các bảng Index cho
parser
Gán các bảng Index cho
parser
Biên dòch luồng byte nhập,
ánh xạ thành đối tượng
soapEnvelope bằng cách gọi
phương thức
soapEnvelope.parse(parser)
Biên dòch luồng byte nhập,
ánh xạ thành đối tượng
soapEnvelope bằng cách gọi
phương thức
soapEnvelope.parse(parser)
Lấy body của soapEnvelope
bằng phương thức
soapEnvelope.getBody()
Lấy body của soapEnvelope
bằng phương thức
soapEnvelope.getBody()
Nếu body là
SoapFault
Nếu body là
SoapFault
Lỗi
Lỗi
Đúng

Đúng
GVHD: ThS Tân Hạnh SVTH: Lê Ngọc Quốc Khánh
21
PTIT-HCM
App
App
Chi
Chi
tiết
tiết
các
các
module
module
phía
phía
client (
client (
tt
tt
)
)

VietSign.java

Hotrotuyensinh.jad

Hotrotuyensinh.html
Nếu c là
signCommand, và i

là TextField
Nếu c là
signCommand, và i
là TextField
Lấy chuỗi của TextField i
gán cho currentString.
Lấy ký tự cuối cùng của
chuỗi gán cho
currentChar
Lấy chuỗi của TextField i
gán cho currentString.
Lấy ký tự cuối cùng của
chuỗi gán cho
currentChar
Kích hoạt
commandAction(Command c,
Item i)
Kích hoạt
commandAction(Command c,
Item i)
Nếu currentChar
thuộc tập hợp các ký
tự có dấu từ ký tự A
Nếu currentChar
thuộc tập hợp các ký
tự có dấu từ ký tự A
Hiển thò danh sách các ký
tự có dấu từ ký tự A
Hiển thò danh sách các ký
tự có dấu từ ký tự A

Nếu currentChar
thuộc danh sách các
ký tự có dấu từ ký tự
E
Nếu currentChar
thuộc danh sách các
ký tự có dấu từ ký tự
E


Đúng
Đúng
Đúng
Đúng
Sai
Sai
GVHD: ThS Tân Hạnh SVTH: Lê Ngọc Quốc Khánh
22
PTIT-HCM
App
App
Module xử lý
Module xử lý
phía
phía
server
server

EnrollProxyServlet.java


Enroll.java

EnrollService.java

web.xml

EnrollService.wsdl
Chuyển BAOS thành mảng byte, đưa
vào luồng ByteArrayInputStream BAIS.
Chuyển BAOS thành mảng byte, đưa
vào luồng ByteArrayInputStream BAIS.
Phân tích BAIS bằng bộ phân tích
WbxmlParser thành đối tượng
SoapEnvelope requestEnvelope. Kết quả
ta được SoapEnvelope của client
Phân tích BAIS bằng bộ phân tích
WbxmlParser thành đối tượng
SoapEnvelope requestEnvelope. Kết quả
ta được SoapEnvelope của client
Đọc luồng DataInputStream của
request gởi đến, ghi nó vào luồng
ByteArrayOutputStream BAOS
Đọc luồng DataInputStream của
request gởi đến, ghi nó vào luồng
ByteArrayOutputStream BAOS
Ghi lại requestEnvelope vào luồng
ByteArrayOutputStream bằng bộ
XmlWriter, kết quả ta được
SoapEnvelope ở dạng văn bản
Ghi lại requestEnvelope vào luồng

ByteArrayOutputStream bằng bộ
XmlWriter, kết quả ta được
SoapEnvelope ở dạng văn bản
Tạo kết nối HttpConnection đến
JAX-RPC server. Gởi luồng byte
tạo ra đến server này
Tạo kết nối HttpConnection đến
JAX-RPC server. Gởi luồng byte
tạo ra đến server này
Chờ nhận hồi đáp từ server. Đọc
luồng hồi đáp và ghi vào luồng
ByteArrayOutputStream BAOS
Chờ nhận hồi đáp từ server. Đọc
luồng hồi đáp và ghi vào luồng
ByteArrayOutputStream BAOS
Chuyển BAOS thành mảng byte, đưa
vào luồng ByteArrayInputStream BAIS.
Chuyển BAOS thành mảng byte, đưa
vào luồng ByteArrayInputStream BAIS.
Phân tích BAIS bằng bộ phân tích
XmlParser thành đối tượng SoapEnvelope
responseEnvelope. Kết quả ta được
SoapEnvelope của server trả về
Phân tích BAIS bằng bộ phân tích
XmlParser thành đối tượng SoapEnvelope
responseEnvelope. Kết quả ta được
SoapEnvelope của server trả về
Ghi lại responseEnvelope vào luồng
ByteArrayOutputStream bằng bộ
WbxmlWriter, kết quả ta được

SoapEnvelope ở dạng nhò phân
Ghi lại responseEnvelope vào luồng
ByteArrayOutputStream bằng bộ
WbxmlWriter, kết quả ta được
SoapEnvelope ở dạng nhò phân
Gởi luồng dữ liệu XML nhò phân này
về cho client
Gởi luồng dữ liệu XML nhò phân này
về cho client
Thực thi lệnh truy vấn gọi Stored
Procedure getUnivList trả về kết quả là
một ResultSet result_rs
Thực thi lệnh truy vấn gọi Stored
Procedure getUnivList trả về kết quả là
một ResultSet result_rs
Lấy số lượng của toàn bộ danh sách ghi
vào phần tử đầu tiên của Vector kết quả
Lấy số lượng của toàn bộ danh sách ghi
vào phần tử đầu tiên của Vector kết quả
Tạo kết nối đến cơ sở dữ liệu
Tuyensinh trên máy chủ SQL Server
Tạo kết nối đến cơ sở dữ liệu
Tuyensinh trên máy chủ SQL Server
Bỏ qua các phần tử của tập kết quả
trước tập kết quả index
Bỏ qua các phần tử của tập kết quả
trước tập kết quả index
Lấy các phần tử thuộc tập kết quả
index, ghi vào Vector kết quả
Lấy các phần tử thuộc tập kết quả

index, ghi vào Vector kết quả
Chuyển Vector kết quả thành
mảng String[], gọi phương thức
return() trả về mảng String[] này
Chuyển Vector kết quả thành
mảng String[], gọi phương thức
return() trả về mảng String[] này
Gọi phương thức getUnivList(int
index, int maxCount)
Gọi phương thức getUnivList(int
index, int maxCount)
Tổng số Record
Tổng số Record
Trường
Trường
Tên trường
Tên trường
Trường
Trường
Tên trường
Tên trường
Trường
Trường
Tên trường
Tên trường


Record 1
Record 2
Record 3

GVHD: ThS Tân Hạnh SVTH: Lê Ngọc Quốc Khánh
23
PTIT-HCM
App
App
Hiệu
Hiệu
suất
suất
của
của
ứng
ứng
dụng
dụng
Chưa có điều kiện thử nghiệm thực tế, tuy nhiên thời gian
thực thi thực tế ước lượng có thể gấp 5 lần thời gian giả
lập tức là khoảng 30720 ms ≈ 31 s
Thời gian thực thi thực tế
6144 msThời gian thực thi trung bình (thời gian từ khi gởi yêu cầu
đến khi nhận được hồi đáp)
107769 bytesKích thước ứng dụng (đóng gói thành tập tin
Hotrotuyensinh.jar, không tinh giảm (obfuscation)
bằng Proguard)
86 + 563 = 649 bytesTổng lượng dữ liệu trao đổi trung bình (phần HTML body
không tính Header, ở dạng WBXML)
1841 bytesKích thước trung bình thông điệp SOAP Response không
nén
563 bytesKích thước trung bình thông điệp SOAP Response đã
được nén dưới dạng WBXML

876 bytesKích thước trung bình thông điệp SOAP Request không
nén
86 bytesKích thước trung bình thông điệp SOAP Request đã được
nén dưới dạng WBXML.
GVHD: ThS Tân Hạnh SVTH: Lê Ngọc Quốc Khánh
24
PTIT-HCM
App
App
Demo
Demo
chương
chương
trình
trình

×