Lời nói đầu
Trong thời đại ngày nay, thời đại của CNH- HĐH đất nước, với sự bùng nổ
của CNTT, hàng loạt các phần mềm ứng dụng cũng như các phần mềm tiện ích
ra đời đồng nghĩa với sự gia tăng về số lượng của các kỹ sư, các chuyên viên
lập trình. giờ đây cùng với sự gia tăng chóng mặt số lượng người dùng truy cập
vào Internet, hệ thống mạng Internet đã trở thành một phần không thể thiếu của
thời đại bởi nó là một thư viện khổng lồ và hữu ích nhất. Việc truy cập Internet
thường xuyên đã trở thành thói quen của thế hệ trẻ. Khai thác thế mạnh của
Internet, các kĩ sư các chuyên viên lập trình đã tung ra các ứng dụng của mình
dưới dạng các trang Web, điều đó đã đáp ứng được nhu cầu khao khát thông tin
của người truy cập Internet. Các Website trên Internet rất phong phú về nội
dung, thông tin được truy cập thường xuyên và nhanh chóng. Giới trẻ ngày nay
lên Web ngày càng nhiều và đa số lên mạng chỉ để tán gẫu, nghe nhạc… còn
một số ít lên mạng để học tập. Nhưng các trang Web phục vụ cho học tập thì rất
ít và chưa được chú trọng khai thác trong khi đó giờ đây nhu cầu kiểm tra kiến
thức và củng cố kiến thức ngày càng cao và là nhu cầu cấp thiết. Nhận thấy rõ
điều đó và do xuất phát từ chính nhu cầu của bản thân, chúng em những sinh
viên khoa Công nghệ thông tin đã mạnh dạn đảm nhận đề 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” với mong muốn cùng với những kiến thức mà mình đã học có thể tự tạo
cho chính mình cũng như cho các sinh viên khác một sân chơi, một trang Web
có thể phục vụ tốt cho việc học tập của chính mình để làm đề tài tốt nghiệp.
Trong bài báo cáo này chúng em đã trình bày rõ về đề tài của chúng em với các
nội dung chủ yếu sau:
Phần I: Giới thiệu và phân tích đề tài
Phần II: Giới thiệu công cụ
Phần III: Phân tích thiết kế chương trình
1
Chúng em những sinh viên đang còn học trong giảng đường do trình độ
và kinh nghiệm còn hạn chế nên khi đảm nhận đề tài này sẽ không tránh khỏi
•Đố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.
3
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:
1. Networking
Mạng máy tính là một tập hợp các máy tính được nối với nhau bởi các
đường truyền vật lý theo một kiến trúc nào đó.
Trong thực tế là các máy tính trong mạng có thể chạy các hệ điều hành khác
nhau trên các nền phần cứng khác nhau. Do đó để có thể nói chuyện được với
nhau, các quá trình cần phải dung chung một phương thức giao tiếp (protocol )
nào đó.
Tổ chức ISO (International Standards Organization) đã đưa ra mô hình
tham khảo OSI (Open Systems Interconnection) dung để phân lớp kiến trúc
mạng.
Theo mô hình OSI, thông tin muốn gửi hay nhận qua mạng phải đi qua 7
lớp. Mỗi lớp có một chức năng khác nhau và cung cấp các interface để các lớp
phía trên có thể sử dụng các dịch vụ mà lớp này cung cấp.
4
I.1 Mô hình mạng OSI:
Application layer: chứa các dịch vụ phục vụ cho người dung như truyền
nhận file hay email…
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
Đ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
hình II.1.2
6
Application Layer
HTTP,FTP,Telnet,
SMTP
Transport Layer
TCP/IP,UDP
Physical Layer
EthernetX.25, Token Ring
Network Layer
IP
Receiving Data
Sending Data
Application layer: chứa các ứng dụng có sử dụng mạng. Lớp này tương ứng
với hai lớp trên cùng (Application và presentation layer) của mô hình OSI.
Transport layer: cung cấp các dịch vụ truyền nhận dữ liệu giữa các quá
trình với nhau. Các quá trình này có thể trao đổi thông tin với nhau thông qua
địa chỉ của máy tính gửi/ nhận và cổng thông tin. Cấp này tương ứng với cấp
2 cấp kế tiếp (session và transport layer) của mô hình OSI.
Network layer: đảm nhận việc xác định, tìm đường và phân phối các gói
thông tin tới địa chỉ đích. Network layer trong mô hình TCP/ IP tương ứng
•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.
8
• 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. Việc gửi những datagram giống như việc gửi thư thông
qua bưu điện. Các package đến đích không theo thứ tự, không đảm bảo
và các message độc lập với nhau.
Do đó ta có thể định nghĩa : UDP là một protocol gửi những package độc
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
10
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)
và làm như thế nào để truy nhập và lấy dữ liệu từ một máy tính ở xa. Phần mềm
ứng dụng đi kèm cần phải có trên cả 2 hệ thống máy tính để kiểm soát sự truy
cập và chuyển dữ liệu giữa hai hệ thống. Tuy nhiên, phần mềm cơ sở dữ liệu
chay trên 2 máy không cần biết rằng việc xử lý cơ sở dữ liệu từ xa đang diễn ra
vì người sử dụng tác động tưói chúng một cách độc lập.
2.4. Mô hình cơ sở dữ liệu Client/Server (Client/Server database model):
Trong mô hình cơ sở dữ liệu Client/Server, cơ sở dữ liệu nằm trên một máy
khác với một máy có thành phần xử lý ứng dụng. Những phần mềm cơ sở dữ
liệu được tách ra giữa hệ thống Client chạy các chương trình ứng dụng và hệ
thống Server lưu trữ dữ liệu.
Trong mô hình này, các thành phần xử lý ứng dụng trên hệ thống Client đưa
ra yêu cầu cho phần mềm cơ sở dữ liệu trên máy client, phần mềm này sẽ kết
nối với phần mềm cơ sở dữ liệu chạy trên Server. Phần mềm cơ sở dữ liệu trên
Server sẽ truy cập vào cơ sở dữ liệu và gửi trả kết quả cho máy Client.
Mới nhìn, mô hình cơ sở dữ liệu Client/Server có vẻ giống như mô hình file-
server. Với mô hình file- server, thông tin gắn với sự truy cập cơ sở dữ liệu vật
lý phải chạy trên toàn mạng. Một thao tác yêu cầu nhiều sự truy cập dữ liệu có
thể gây ra tắc nghẽn lưu lượng truyền trên mạng.
Giả sử một người dung cuối tạo một query để lấy dữ liệu tổng số, yêu cầu lấy
dữ liệu từ 1000 bản ghi, với cách tiếp cận file- server nội dung của tất cả 1000
bản ghi phải đưa lên mạng, vì phần mềm cơ sở dữ liệu chạy trên máy ngưòi sử
dụng phải truy cập từng bản ghi để thoả mãn yêu cầu của người sử dụng. Với
12
cách tiếp cận cơ sở dữ liệu Client/Server, chỉ có query khởi động ban đầu và kết
quả cuối cùng đưa lên mạng, phần mềm cơ sở dữ liệu chạy trên máy lưu giữ cơ
sở dữ liệu sẽ truy nhập các bản ghi cần thiết, xử lý chúng và gọi các thủ tục cần
thiết để đưa ra kết quả cuối cùng.
Trong mô hình cơ sở dũ liệu Client/Server, thường nói đến các phần mềm
front- end software và back- end software. Front- end software được chạy trên
một máy tính cá nhân hoặc một workstation và đáp ứng yêu cầu đơn lẻ riêng
trên nhiều máy khác nhau.
Qua các mô hình cơ sở dữ liệu trên, dễ thấy mô hình Client/Server là mô
hình phù hợp các yêu cầu đặt ra nhất. Vấn đề ở đây là chúng ta sẽ hiện thực mô
hình này bằng ngôn ngữ gì và hiện thực như thế nào. Các ngôn ngữ lập trình có
thể xây dựng những giao diện đẹp và thuận tiện thì thường không có cơ sở dữ
kiệu tốt đi kèm, và thường hạn chế khả năng khi sử dụng trên mạng diện rộng.
Các phần mềm về cơ sở dữ liệu có thể sử dụng mô hình Client/Server thì thường
đòi hỏi có tính chuyên nghiệp cao. Và hầu hết các biện pháp này thì đều có
nhược điểm là phải có sự cài đặt trên máy đơn trước khi móc nối với Server. Với
công nghệ JSP, chúng ta không cần có bất cứ một sự cài đặt nào mà vẫn sử dụng
được các tính năng của chương trình (với điều kiện và có 1 trình duyệt Web và
máy tính đã được nối mạng). JSP truy xuất cơ sở dữ liệu dựa vào trình truy xuất
JPBC theo chuẩn java do tính năng mạng là được cung cấp sẵn nên Java có thể
dung trên mạng Internet dễ dàng. Với tính năng độc lập nền, người sử dụng
không phải e ngại việc phần mềm không tương thích với hệ điều hành của mình.
Đặc biệt là Java có thể kết nối với hầu hết cơ sở dữ liệu chuẩn của các hang
phần mềm thông qua JDBC, vì vậy cơ sở dữ liệu của hệ thống có thể xây dựng
bằng hệ cơ sở dữ liệu chuẩn, chẳng hạn Oracle để quản lý dữ liệu một cách chặt
chẽ (Ở đây chúng ta sẽ dung cơ sở dữ liệu là MS Access trong môi trường
Windows 9x). Mô hình quản lý ngân hàng đề thi trắc nghiệm được xây dựng
dựa theo mô hình Three- tier như hình II.2.5
14
• Client: là một chương trình chạy các trang JSP thông qua trình duyệt web
để kết nối và gửi các yêu cầu đến server.
• Server: là một chương trình chạy dưới dạng Application, có nhiệm vụ
lắng nghe, phục vụ các yêu cầu từ Client, trả kết quả về cho Client và là
cầu nối trung gian tới cơ sở dữ liệu.
• Database Server: là phần cơ sở dữ liệu của hệ thống dung để lưu trữ tất
cả các dữ liệu liên quan đến hệ thống. Ta sẽ sử dụng Access để tạo ra các
cơ sở dữ liệu và kết nối với Server.
thường cung cấp them một số tính năng khác, cho nên về cơ bản SQL giống
nhau ở tất các hệ cơ sở dữ liệu nhưng mỗi hệ cơ sở dữ liệu thì nó có những điểm
riêng cho SQL của nó.
3.3 ODBC (Object Database Connectivity)
ODBC có nhiệm vụ trả lời cho sự kết nối tới những cơ sở dữ liệu trong
Windows được phát hành năm 1992 bởi Microsoft. ODBC cho phép phát triển
và một phiên bản khác được phổ biến năm 1994 nhanh hơn và ổn định hơn, nó
cũng là phiên bản 32bits đầu tiên. Thêm vào đó, ODBC bắt đầu di chuyển
những nền khác hơn Windows và trở nên hoàn toàn thâm nhập vào PC và thế
giới workstation. ODBC driver được cung cấp gần như bởi mỗi database vendor
Dữ liệu vào
Dữ liệu vào
Dữ liệu
Lưu trữ
Xử lý
Hình 1
16
chủ yếu. Nhiều database vendor xác minh ODBC như một “alternate interface”
cho tiêu chuẩn của chúng và chương trình trong ODBC không thông thường. Nó
hầu như giống những những chương trình Windows khác, gồm những yếu điểm
và những sự lựa chọn làm cho nó khó học. Cuối cùng ODBC không phải là một
tiêu chuẩn điều khiển độc lập. Nó phát triển và tiến hoá bởi Microsoft, đưa ra
môi trường phần mềm cạnh tranh cao chúng ta làm việc làm cho tương lai của
nó mạnh hơn dự đoán.
3.4 JDBC là gì?
JDBC là một object- oriented bao bọc và phác thảo lại của ODBC API để rất
dễ hơn cho việc học và sử dụng và nó cho phép ta viết code độc lập để chất vấn
(query) và thao tác những cơ sở dữ liệu. Mục đích chính của JDBC là kết nối
chặt chẽ chương trình java với cơ sở dữ liệu. Java đinh nghĩa mọi hướng cho
khác là có sẵn). Điều này đặc biệt hữu dụng cho các cơ sở dữ liệu phân bố.
3.6 ODBC và JDBC
ODBC trong mô hình JDBC
ODBC và JDBC chia xẻ nguồn gốc chung: cả hai là nền tảng trên X/OPEN gọi
cấp giao tiếp cho SQL. Mặc dù những JDBC driver nổi bật cho nhiều cơ sở dữ
liệu, chúng ta có thể viết chương trình Java sử dụng ODBC hiện có. Trên thực tế
là Javasoft và Intersolv có viết một Java driver - cầu nối JDBC –ODBC – cho
phép người phát triển sử dụng ODBC driver hiện có trong chương trình Java.
Hình 3 minh hoạ vị trí của JDBC – ODBC Brigde trong kiến trúc toàn thể của
JDBC. Tuy nhiên JDBC – ODBC Brigde đòi hỏi sự cài đặt trên client, hay ở nơi
mà chương trình Java thực sự chạy, bởi vì Brigde phải gọi phương thức nội bộ
để chuyển từ ODBC sang JDBC. Chỉ có Java driver 100% mới có thể download
thông qua mạng với một Java applet, không cần bất cứ một sự cài đặt nào.
Nhiệm vụ của ODBC driver trong kiểu tương tự như JDBC driver. Trên thực tế
JDBC – ODBC Brigde thật sự là một JDBC driver chuyển đến và từ ODBC ở
cấp thấp. Khi JDBC driver cho cơ sở dữ liệu sẵn có, chúng ta có thể dễ dàng bật
18
từ ODBC driver đến JDBC driver với một vài thay đổi, nếu có sự thay đổi đoạn
mã của chương trình Java.
3.7 Các kiểu của JDBC driver
Có chính xác 4 phương pháp cho một chương trình Java kết nối tới cơ sở dữ
liệu:
JDBC – ODBC Brigde và ODBC: trong trường hợp này, đây là một giải
pháp cục bộ từ đó JDBC driver và brigde phải hiện diện trong mỗ máy của
user. Đây là nguyên tắc cơ bản một giải pháp tạm thời.
Mã tự nhiên (Native code) với Java driver: cách này thay thế ODBC gọi tới
một protocol độc lập, rồI được chuyển tới một server. Server có thể kết nối tới
bất kì một số cơ sở dữ liệu. Phương thức này cho phép ta gọi một server từ một
applet trên máy Client của ta và trả về kết quả trên Applet.
Native protocol Java driver: Java driver chuyển đổi trực tiếp tới protocol cho
Connection con = <application>.getConnection(url);
Chú ý: tên cơ sở dữ liệu sử dụng ở đây phải trùng với tên Data Source trong
ODBC setup panel.
Phương thức URL có thể hoàn toàn khác nhau đối với những kiểu cơ sở dữ
liệu khác nhau:
Jdbc:subprotocol:subname
Những ký tự đầu tiên đại diện cho phương thức kết nối và luôn luôn là
JDBC, cũng có thể có nhiều subprototol và ở đây subprotocol được định rõ là
ODBC. Nó được định nghĩa sự kết nối máy móc cho một lớp những cơ sở dữ
liệu. Nếu ta kết nối tới 1 cơ sở dữ liệu server trên một máy khác, ta phải định rõ
máy đó và subdrectory. Cuối cùng ta phải chỉ rõ 1 username và password.
b ) Truy xuất cơ sở dữ liệu
Một khi ta kết nối tới cơ sở dữ liệu, ta có thể yêu cầu cung cấp những
thông tin trên những tên của các bảng, các tên và những nộ dung trong các cột
của chúng; và ta có thể chạy những câu lệnh SQL mà chất vấn cơ sở dữ liệu,
hoặc thêm vào, hoặc thay đổi nội dung. Những đối tượng mà ta thường dùng để
thu được thông tin từ cơ sở dữ liệu là:
20
•DatabaseMetaData: thông tin về cơ sở dữ liệu nói chung: tên bảng liệt kê
(index), tên sản phẩm cơ sở dữ liệu và phiên bản, những hành vi xác minh bởi
cơ sở dữ liệu.
•ResultSet: thông tin về một bảng hay một kết quả của một query. Ta truy cập
dữ liệu theo từng hàng nhưng có thể truy cập những cột bất kỳ.
•ResultSetMetaData: thông tin về nhữn tên cột và những kiểu trong ResultSet.
Trong khi những đối tượng này có một số lớn các phương thức cho phép ta lấy
được rất nhiều thông tin chi tiết về những yếu tố của cơ sở dữ liệu, có một vài
phương thức chủ yếu cho mỗi đối tượng cho ta thông tin đầy đủ nhất về dữ
liệu của ta.
ResultSet
Đối tượng ResultSet là đối tượng đơn quan trọng nhất trong JDBC. Nó là yếu
những cột và những tên của mỗi cột:
GetColumnCount(); trả về số của những cột trong ResultSet
GetColumnName(int); trả về tên của số cột int
GetColumnLabel(int); trả về nhãn đề nghị cho một số int
IsCurrency(int); trả về true nếu cột chiếm một số trong đơn vị thi hành
IsReadOnly(int); trả về true nếu cột là tự động tăng. Như vậy những cột luôn
luôn là khoá và chỉ đọc.
GetColumnType(int); trả về loại dữ liệu SQL cho cột này. Những loại dữ liệu
này gồm có bigint, binary, bit, char, date, decimal, double, float, integer,
longvarbinary, longvarchar, null, numeric, other, real, smallint, time,
timestamp, tiyint, varbinary, varchar.
DatabaseMetaData
Đối tượng DatabaseMetaData cho chúng ta thông tin về toàn bộ cơ sở dữ liệu.
Chúng ta sử dụng nó chủ yếu để tìm ra những tên của các bảng trong cơ sở dữ
liệu và những tên của các cột trong một bảng. Từ đó những cơ sở dữ liệu khác
nhau cũng xác minh khác nhau về SQL, cũng có một số phương thức query cơ
sở dữ liệu về những phương thức SQL nó support như thế nào:
22
GetCatalogs(); trả về một danh sách những Catalog của thông tin trong cơ sở
dữ liệu với JDBC – ODBC Brigde driver ta lấy được một danh sách những
cơ sở dữ liệu được cập nhật với ODBC.
GetTables; trả về một sự mô tả của những tên bảng cho tất cả các bảng phối
hợp tableName và tất cả những cột columnName
GetColumns; trả về một sự mô tả của bảng những tên cột cho tất cả các bảng
phối hợp tableName và tất cả những cột phối hợp với columnName.
getURL; tìm tên của URL được kết nối.
GetDriverName(); tìm tên của những datebase được kết nối tới.
Lấy thông tin trên những table trong một số cơ sở dữ liệu sử dụng phương
pháp gettable() trong DataBaseMetaData.
Results =dma.getTable(catalog,schema,tablemsk,type );
lại trong hệ thống dưới dạng đề thi.
Bài thi trắc nghiệm trực tiếp trên máy là một đề thi được trình bày trong trình
duyệt Web để người sử dụng trả lời và chương trình chấm điểm. Mỗi đề thi có
một mức kiểm tra và thời gian do giáo viên quy định cụ thể trong quá trình soạn
đề .Do đó trong quá trình thi hệ thống ngân hàng đề thi trắc nghiệm sẽ tính thời
gian từ lúc bắt đầu làm bài,nếu hết thời gian quy định mà người làm chưa làm
xong thì hệ thống sẽ tự động ngưng quá trình làm bài,lưu bài thi , chấm điểm và
trả kết quả về cho người làm.
Tất cả các dữ liệu liên quan đến hệ thống như dữ liệu về các User sử dụng hệ
thống ,dữ liệu về các câu hỏi thi , đề thi do giáo viên soạn, dữ liệu về các bài thi
hay nhièu thứ khác nữa được lưu dưới dạng bảng (Access,SQL, Oracle,Fox…)
trên máy chủ Server.
Ở đây CSDL của hệ thống được lưu dưới dạng bảng Access. Do đó từ sơ đồ
logical giữa các class ta chuyển sang sơ đồ quan hệ của Access, trong đó mỗi
class trong sơ đồ logical giữa các class được chuyển thành mỗi bảng trong sơ đồ
quan hệ của Access tương ứng .
24
Trong đề tài này ta sử dụng bảng của Access để lưu dữ liệu . Do đó các bảng
dữ liệu trước khi sử dụng ta phải đăng ký với hệ thống thông qua 32bit ODBC
của hệ điều hành:
Trong hình trên ta chọn System DNS rồi chọn Add…
Chọn data source là Microsoft Access driver(*.mdb) ròi nhấn Finish để đăng
ký data source dùng trong chương trình.
25