1. Trang chủ
  2. » Luận Văn - Báo Cáo

Viết chương trình cho giáo viên dựa trên mô hình Client-Server gồm các modul

23 784 2
Tài liệu đã được kiểm tra trùng lặp

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

THÔNG TIN TÀI LIỆU

Thông tin cơ bản

Tiêu đề Viết chương trình cho giáo viên dựa trên mô hình Client-Server gồm các modul
Trường học Trường Đại Học Công Nghệ Thông Tin
Chuyên ngành Công Nghệ Thông Tin
Thể loại Luận văn tốt nghiệp
Định dạng
Số trang 23
Dung lượng 138 KB

Các công cụ chuyển đổi và chỉnh sửa cho tài liệu này

Nội dung

Viết chương trình cho giáo viên dựa trên mô hình Client-Server gồm các modul

Trang 1

Luận văn tốt nghiệp Phân tích đề tài

Trang 53

Phần 2 : Phân Tích Đề Tài

I Nội dung đề tài

Viết chương trình cho giáo viên dựa trên mô hình Client – Server gồm các modul

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ả thi 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 hàng đề 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 hàng đề thi trắc

nghiệm cho phép Người sử dụng, tùy theo mức độ cho phép của hệ thống ngân hàng đề 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 hàng đề 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 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 trình duyệt web Do đó chương trình của ta có liên quan đến các vấn đề sau

Trang 2

Luận văn tốt nghiệp Phân tích đề tài

Open Systems Interconnection) dùng để 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áclớp phía trên có thể sử dụng

các dịch vụ mà lớp này cung cấp

1.1.Mô hình mạng OSI

Hình II.1.1

Application layer : chứa các dịch vụ phục vụ cho người dùng như

truyền nhận file hay

email …

Presentation layer : 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 layer : 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à

Trang 3

kết thúc kết nối của các quá trình trên các máy 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 ngẽn giao thông của mạng

Datalink layer : bảo đảm các gói dữ liệu được gửi đi thông 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 phải đ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 TPC/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

Hình II.1.2

Để đả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 dùng các protocol TCP, UDP Do đó ta sử dụng mô hình mạng TCP/IP gồm

bốn lớp được mô tả bằng hình II.1.2

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 Application Layer

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 2 cấp kế tiếp

(session và transport layer) của mô

hình OSI

Trang 4

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 với hai lớp network và datalink

của mô hình OSI

Physical layer : sử dụng các giao tiếp chuẩn hiện có như

Ethernet, Tokenking,… để

phục vụ cho việc gửi và nhận dữ liệu

Các thành phần liên quan đến mạng

Host : là một máy tính riêng lẻ trên mạng Mỗi host trên

mạng TCP/IP chỉ có duy

nhất một địa chỉ IP (IP number)

Hostname : Đó là một tên tượng trưng có thể ánh xạ vào

trong IP number Một vài

phương thức tồn tại biểu diễn cho ánh xạ đó, như là DNS

(Domain Name Service) và Sun's

NIS (Network Information Service)

IETF : Internet Engineering Task Force là một nhóm chịu trách

nhiệm cho việc duy

trì chuẫn Internet và định nghĩa một chuẫn mới

internet : là một mạng của nhiều mạng Khi viết bằng chữ

in hoa (Internet), nó quy

chiếu đến toàn bộ mạng có mối liên hệ với nhau của nhiều mạng

IP number : là địa chỉ duy nhất cho mỗi host trên Internet Nó

được biểu diễn bằng

một số nguyên 32bits

packet : là một thông điệp riêng lẻ gởi trên mạng Đôi khi

packet quy chiếu đến

datagram, nhưng giới hạn cũ luôn luôn quy chiếu đến dữ liệu ởtại lớp mạng và sau đó quy

chiếu thông điệp đến lớp cao hơn

protocol : Tập hợp các định dạng dữ liệu và các thông điệp

được sử dụng để chuyển

thông tin Những thực thể mạng khác nhau phải cùng một protocol theo trật tự để những thực

thể mạng khác có thể hiểu được

Luận văn tốt nghiệp Phân tích đề tài

Trang 57

socket : là một sự truyền thông endpoint Trong mô hình TCP/IP

một socket 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

Trang 5

hai giao diện mạng (mỗi cái 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 port 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 của hệ thống, không nên dùng 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ể dùng các lớp trong package 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 thì sẽ được thông báo)

Những ứng dụng yêu cầu một kênh truyền point-to-point đáng tin cậy đều dùng TCP

.HyperText Transfer Protocol (HTTP), File Transfer Protocol (ftp) và

Trang 6

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 lập gọi là

các datagram từ máy này tới máy khác, không đảm bảo data đến thành công UDP không dựa

tới đúng cho từng ứng dụng

Trong việc truyền nhận data dựa trên connection, một ứng dụng thiết lập một

connection với một ứng dụng khác bằng cách gắn một socket cho mỗi port number Do đó sẽ

không thể có hai ứng dụng dùng chung một port

Thông qua các lớp trong package java.net của ngôn ngữ Java, cácchương trình viết

bằng Java có thể dùng TCP hay UDP để truyền nhận data qua mạng

Trong package java.net có URL, URLConnection, Socket và

Trang 7

ảnh đó, sau đó dùng 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à dể 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

Luận văn tốt nghiệp Phân tích đề tài

Trang 59

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(File – server database model)

Mô hình xử lý từng phần cơ sở dữ liệu (Database extract processing model)

Mô hình cơ sở dữ liệu Client/Server (Clent/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 thân

cơ sở dữ liệu đều ở trên cùng một bộ xử lý

Ví dụ người dùng 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ệunằm trên điã 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ô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 vị 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 1 máy mainframe do vậy cấu

Trang 8

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

cơ sở dữ liệu

2.3.Mô hình xử lý từng phần cơ sở dữ liệu (Database

extract processing model) :

Trong một mô hình khác trong đó một cơ sở dữ liệu ở xa có thể được truy cập bởi phần

mềm cơ sở dữ liệu, được gọi là xử lý dữ liệu từng phần Với mô hình này, người sử dụng có

thể tại một máy tính cá nhân kết nối với hệ thống máy tính

ở xa nơi có dữ liệu mong muốn

Người sử dụng sau đó có thể tác động trực tiếp đến phần mềm chạy trên máy ở xa và tạo yêu

cầu để lấy dữ liệu từ cơ sở dữ liệu đó Người sử dụng

cũng có thể chuyển dữ liệu từ máy tính

Trang 9

ở xa về chính máy tính của mình và vào điã cứng và có thể thực hiện việc sao chép bằng

phần mềm cơ sở dữ liệu trên máy cá nhân

Với cách tiếp cận này, người sử dụng phải biết chắc chắn làdữ liệu nằm ở đâu 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 để kiểm soát sự truy cập và chuyển dữ

liệu giữa 2 hệ thống Tuy nhiên, phần mềm cơ sở dữ liệu chạy 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

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

Luận văn tốt nghiệp Phân tích đề tài

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, tuy

nhiên mô hình Client/Server có rất nhiều thuận lợi hơn 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 giao

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 dùng cuối tạo một query để lấy dữ liệu tổng số, yêu cầu đòi hỏi 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ườisử 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 cách tiếp cận cơ sở dữ liệu Client/Server, chỉ

Trang 10

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 biệt, phần mềm này đóng vai trò của

Client trong ứng dụng cơ sở dữ liệu Client/Server và thực hiện các chức năng hướng tới nhu

cầu người dùng cuối cùng

Phần mềm Front-end software thường được chia thành các loại sau :

End user database software : Phần mềm cơ sở dữ liệu này có thể được thực hiện bởi

người sử dụng cuối trên chính hệ thống của họ để truy nhập các cơ sở dữ liệu cục bộ nhỏ cũng

như kết nối với các cơ sở dữ liệu lớn hơn trên cơ sở dữ liệu Server

Simple query and reporting software : Phần mềm này được thiết kế để cung cấp các

công cụ dễ dùng hơn trong việc lấy dữ liệu từ cơ sở dữ liệu và tạo các báo cáo đơn giản từ cơ

sở dữ liệu đã co ù

Data analysis software : Phần mềm này cung cấp các hàm về tìm kiếm, khôi phục,

chúng có thể cung cấp các phân tích phức tạp cho người dủng.Luận văn tốt nghiệp Phân tích đề tài

Trang 11

Back-end software : Phần mềm này bao gồm phần mềm cơ sở dữ liệu Client/ Server

và phần mề m mạng chạy trên máy đóng vai trò là Server cơ sở dữ liệu

2.5.Distributed database model (Mô hình cơ sở dữ liệu phân

sở dữ liệu phân tán lại giả định bản thân cơ sở dữ liệu có

ở 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 Clie

nt/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ữ liệ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 diểm là phải có sự cài đặt trên máy đơn trước khi móc nối với Server Ngôn

ngữ Java đưa ra một hướng giải quyết đơn giản các vấn đề trên Với việc thực thi các Applet

nhúng trong trang Web, 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 là có một trình duyệt Web và máy tính đã

được nối mạng) Do tính năng mạng là được cung cấp sẵn nên Java có thể dùng trên mạng

Internet dễ dàng Với tính độ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ác

cơ sở dữ liệu chuẩn của các hãng 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ẽ dùng cơ sở dữ liệu là Ms Access trong môi trường Window

Luận văn tốt nghiệp Phân tích đề tài

Trang 63

95) 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

Trang 12

Three-tier như hình II.2.5

Client là một chương trình chạy dưới dạng applet 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ụ sẽ 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 dùng

để 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

Tất cả các dữ liệu đều được lưu trên máy Server (máy chủ),

việc kết nối, truy xuất cơ

sở dữ liệu thông qua JDBC

3 Sử dụng JDBC để tạo và truy xuất cơ sở dữ liệu

3.1 Thế nào là một cơ sở dữ liệu (Database)?

Hình II.2.5 Three-tier system structure

Luận văn tốt nghiệp Phân tích đề tài

với các mục đích khác nhau đồng thời truy cập và khai thác

3.2 Lấy dữ liệu ra từ cơ sở dữ liệu

SQL (Structure Query Language) là ngôn ngữ chuẩn về xử lý dữ liệu được ANSI và

ISO thừa nhận Hiện nay hầu hết các hệ cơ sở dữ liệu đều hổ trợ SQL SQL l à ngôn ngữ phi

thủ tục (non procedure language) : ta chỉ cần yêu cầu máy tính đưa ra những gì mà không cần

biết máy tính làm như thế nào Người sử dụng chỉ cần đưa ra một lệnh SQL sau đó hệ cơ sở

Ngày đăng: 26/04/2013, 10:09

HÌNH ẢNH LIÊN QUAN

Hình II.1.1 - Viết chương trình cho giáo viên dựa trên mô hình Client-Server gồm các modul
nh II.1.1 (Trang 2)

TỪ KHÓA LIÊN QUAN

TÀI LIỆU CÙNG NGƯỜI DÙNG

TÀI LIỆU LIÊN QUAN

🧩 Sản phẩm bạn có thể quan tâm

w