Giới thiệu và phân tích đề tài Xây dựng và quản lý ngân hàng đề thi trắc
nghiệm trên Web trên mạng theo công nghệ JSP
I .Nội dung đề tài
Viết chương trình quản lý ngân hàng đề thi trắc nghiệm trên Web theo công
nghệ JSP dựa trên mô hình Client – Server bao gồm các modul sau:
. Soạn câu hỏi trắc nghiệm
. Quản lý ngân hàng đề và soạn đề thi
. Trắc nghiệm và quản lý thông tin của người thi
II .Yêu cầu của đề tài
Dựa vào nội dung của đề tài đặt ra, chúng ta cần xây dựng một chương trình
ứng dụng dựa trên các yêu cầu sau:
• Xây dựng một chương trình theo mô hình Client- Server, toàn bộ dữ liệu
liên quan đến hệ thống được lưu trữ trên Server, việc truy cập và truyền dữ
liệu được thực hiện thông qua mạng nhằm phục vụ cho việc kiểm tra trắc
nghiệm, cập nhật cơ sở dữ liệu.
• Hệ thống ngân hàng đề thi trắc nghiệm quản lý, lưu trữ tất cả các câu thi,
đề thi của giáo viên để kiểm tra trắc nghiệm, đồng thời hệ thống cũng quản
lý, lưu trữ các nhóm người sử dụng và kết quả của sinh viên. Mỗi đề thi có
một mức kiểm tra khác nhau, phù hợp với trình độ của người sử dụng, nội
dung muốn kiểm tra và hình thức ra đề.
• Thông qua trình duyệt Web, người sử dụng hệ thống ngân hang đề thi
trắc nghiệm có thể thực hiện các thao tác phù hợp với các chức năng mà hệ
thống ngân hang đề thi trắc nghiệm cho phép. người sử dụng, tuỳ theo ,
mức độ cho phép của hệ thống ngân hang đề thi trắc nghiệm mà có các
quyền thao tác trên hệ thống khác nhau.
• Đối tượng sử dụng hệ thống ngân hang đề thi trắc nghiệm này gồm:
Người quản trị chung, Giáo viên, Sinh viên.
III . Giải quyết các yêu cầu của đề tài
Vì chương trình này xây dựng theo mô hình Client-Server, việc truy xuất,
truyền dữ liệu qua mạng thông qua trình duyệt Web. Do đó, chương trình của ta có
lien quan đến các vấn đề sau:
Presentation: chứa các dịch vụ về thao tác dữ liệu như nén, giải nén…. Cấp
này không có các dịch vụ thông tin của riêng nó.
Session: chứa các dịch vụ cho phép trao đổi thông tin giữa các quá trình, tạo
và kết thúc kết nối của các quá trình trên các máy chủ khác nhau.
Transport layer: chứa các dịch vụ tìm và sửa lỗi nhằm bảo đảm tính đúng
đắn của dữ liệu nhận.
Network layer: quản lý việc kết nối trong mạng liên quan đến địa chỉ của
máy tính gửi và máy tính nhận cũng như sự tắc nghẽn giao thông của mạng.
Datalink layer: bảo đảm các gói dữ liệu được gửi thông tin qua mạng vật
lý.
Physical layer: phục vụ cho việc gửi các dữ liệu là các bit thô thông qua
kênh truyền.
Do đặc tính của mô hình OSI, dữ liệu gửi đi phải qua tất cả 14 cấp để đến
được chương trình nhận. Ở mỗi cấp, dữ liệu sẽ bị trễ một khoảng thời gian. Điều
này làm giảm hiệu suất của mạng. Mô hình TCP/IP có ưu điểm hơn và hiện đang
được sử dụng rộng rãi.
1.2. Mô hình mạng TCP/IP
Để đảm bảo việc truy cập, truyền dữ liệu trên mạng là không mất mát, các
gói dữ liệu đến đích phải theo đúng thứ tự đã được gửi và các máy tính chạy
trên mạng Internet truyền thông với nhau dung các protocol TCP, UDP. Do đó
ta sử dụng mô hình mạng TCP/IP gồm 4 lớp được mô tả bằng hình II.1.2
Application LayerHTTP,FTP,Telnet, SMTP
Transport LayerTCP/IP,UDP
Physical Layer EthernetX.25, Token Ring
Network Layer IP
Receiving Data
Sending Data
hình II.1.2
thường thì được xác định bởi một cặp trùng khớp duy nhất của địa chỉ IP
nguồn, số port và địa chỉ IP đích, số port.
• Router: một host mà được biết đến đối với các package trả về giữa các mạng
khác nhau như thế nào. Một router có thể trở thành một điều gì đó đơn giản như
là một máy với hai giao diện mạng (mỗi máy trên một mạng vật lý khác nhau).
• Port number: nằm trong khoảng 0-65535 (vì port được biểu diễn bằng số
nguyên 16bits). Những post nằm trong khoảng 0-1023 là những port dành riêng
cho những dịch vụ quen thuộc như HTTP, FTP và các dịch vụ của hệ thống,
không nên dung những port này trong ứng dụng của chúng ta.
Khi chúng ta viết các chương trình java truyền qua mạng điều này có nghĩa
là chúng ta đang lập trình ở lớp Application. Chúng ta cần quan tâm tới các
protocol TCP và UDP…. Mà chúng ta có thể dung các lớp trong package và
java.net. Các lớp này cung cấp việc truyền thông qua mạng độc lập với hệ thống.
Tuy nhiên chúng ta cần hiểu rõ sự khác biệt giữa TCP và UDP để xác định rõ
những lớp nào trong thư viện java mà chúng ta sử dụng.
Khi muốn hai chương trình truyền dữ liệu cho nhau một cách đáng tin cậy
thì giữa chúng phải thiết lập một connection và gửi dữ liệu qua lại thông qua
connection đó.
TCP là một protocol dựa trên connection cung cấp các dataflow giữa hai
máy tính và đảm bảo rằng data được gửi từ một đầu connection tới đầu kia không
mất mát và đứng thứ tự (nếu có lỗi sẽ được thông báo).
Những ứng dụng yêu cầu một kênh truyền point- to- point đámg tin cậy đều
dùng TCP. HyperText Transfer Protocol (HTTP), File Transfer Protocol (FTP) và
Telnet là những ứng dụng đòi hỏi một kênh truyền đáng tin cậy, thứ tự gửi và nhận
phải đảm bảo là điều kiện buộc phải có đối với ứng dụng này. Khi dung HTTP để
đọc từ một URL (Uniform Resouce Location) dữ liệu cần phải nhận được theo
đúng thứ tự mà nó gửi đi nếu không mọi thứ sẽ bị đảo lộn.
• UDP protocol cung cấp việc truyền nhận data không đảm bảo giữa hai ứng
dụng trên mạng. UDP không dựa trên connection như TCP. UDP gửi những
package độc lập với nhau gọi là datagram từ ứng dụng này tới ứng dụng kia.
tạo một URL chứa địa chỉ tới file ảnh đó, sau đó dung một số hàm cần thiết để
connect và truy xuất file ảnh đó.
Điểm nối bật của Networking do java mang lại là tính hữu dụng và để sử
dụng, điều này được thể hiện qua package java.net trong các lớp thư viện của java.
2. Các mô hình cơ sở dữ liệu
Nhìn chung mọi ứng dụng cơ sở dữ liệu đều bao gồm các phần:
♦ Thành phần xử lý ứng dụng (Application Processing Components)
♦ Thành phần phần mềm cơ sở dữ liệu (Database Software Components)
♦ Bản thân cơ sở dữ liệu (The database itself)
Thông thường có 5 mô hình kiến trúc dựa trên cấu hình phân tán về truy nhập dữ
liệu của hệ thống máy tính Client/Server:
♦ Mô hình cơ sở dữ liệu tập trung (Centralized database model)
♦ Mô hình cơ sở dữ liệu theo kiểu file-server (Client/Server database model)
♦ Mô hình cơ sở dữ liệu phân tán (Distributed database model)
2.1. Mô hình cơ sở dữ liệu tập trung (Centralized database model):
Trong mô hình này các thành phần xử lý ứng dụng, phần mềm cơ sở dữ liệu và
bản than cơ sở dữ liệu đều ở trên cùng một bộ xử lý.
Ví dụ người dung máy tính cá nhân có thể chạy các chương trình ứng dụng có sử
dụng phần mềm cơ sở dữ liệu Oracle để truy nhập tới cơ sở dữ liệu nằm trên đĩa
cứng của máy tính cá nhân đó. Từ khi các thành phần ứng dụng, phần mềm cơ sở
dữ liệu và bản thân cơ sở dữ liệu cùng nằm trên một máy tính thì ứng dụng đã thích
hợp với mô hình tập trung.
Hầu hết các công việc xử lý luồng thông tin chính được thực hiện bởi nhiều tổ
chức mà vẫn phù hợp với mô hình tập trung. Ví dụ một bộ xử lý mainframe chạy
phần mềm cơ sở dữ liệu IMS hoặc DB2 của IBM có thể cung cấp cho các trạm làm
việc ở các bị trí phân tán sự truy cập nhanh chóng tới cơ sở dữ liệu trung tâm. Tuy
nhiên trong rất nhiều hệ thống như vậy, cả 3 thành phần của ứng dụng cơ sở dữ
liệu đều thực hiện trên cùng một máy mainframe do vậy cấu hình này cũng tương
tự mô hình tập trung.
2.2. Mô hình cơ sở dữ liệu theo kiểu file-server (File- server database model)