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

XÂY DỰNG HỆ THỐNG THI TRẮC NGHIỆM TIẾNG ANH TRỰC TUYẾN

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 (2.32 MB, 50 trang )

ĐẠI HỌC ĐÀ NẴNG

TRƯỜNG ĐẠI HỌC BÁCH KHOA

KHOA CÔNG NGHỆ THÔNG TIN
Tel. (84-511) 3736949, Fax. (84-511) 3842771
Website: itf.dut.udn.vn, E-mail:

ĐỒ ÁN TỐT NGHIỆP KỸ SƯ
NGÀNH CÔNG NGHỆ THÔNG TIN
ĐỀ TÀI:

XÂY DỰNG HỆ THỐNG
THI TRẮC NGHIỆM TIẾNG ANH TRỰC TUYẾN

SINH VIÊN
MÃ SINH VIÊN
LỚP
CBHD

: PHẠM NGỌC ĐƯỢC
: 102150093
: 15T2
: ThS. NGUYỄN VĂN NGUYÊN

Đà Nẵng, 12/2019


NHẬN XÉT CỦA NGƯỜI HƯỚNG DẪN

..................................................................................................................................................


..................................................................................................................................................
..................................................................................................................................................
..................................................................................................................................................
..................................................................................................................................................
..................................................................................................................................................
..................................................................................................................................................
..................................................................................................................................................
..................................................................................................................................................
..................................................................................................................................................
..................................................................................................................................................
..................................................................................................................................................
..................................................................................................................................................
..................................................................................................................................................
..................................................................................................................................................
..................................................................................................................................................
..................................................................................................................................................
..................................................................................................................................................
..................................................................................................................................................

Đà Nẵng, ngày 19 tháng 12 năm 2019
Giảng viên hướng dẫn

ThS. Nguyễn Văn Nguyên


NHẬN XÉT CỦA NGƯỜI PHẢN BIỆN
..................................................................................................................................................
..................................................................................................................................................
..................................................................................................................................................
..................................................................................................................................................

..................................................................................................................................................
..................................................................................................................................................
..................................................................................................................................................
..................................................................................................................................................
..................................................................................................................................................
..................................................................................................................................................
..................................................................................................................................................
..................................................................................................................................................
..................................................................................................................................................
..................................................................................................................................................
..................................................................................................................................................
..................................................................................................................................................
..................................................................................................................................................
..................................................................................................................................................
..................................................................................................................................................

Đà Nẵng, ngày … tháng 12 năm 2019
Giảng viên phản biện


TĨM TẮT
I. Thơng tin chung
1. Tên đề tài: Xây dựng website thi trắc nghiệm tiếng Anh trực tuyến.
2. Sinh viên thực hiện: Phạm Ngọc Được.
3. Số thẻ SV: 102150093.
4. Lớp: 15T2.
II. Tóm tắt đồ án
Trong thời gian gần đây, thấy được tầm quan trọng của việc học tiếng Anh trong
đời sống nên các trường đại học, trung học phổ thông đã tổ chức dạy và đánh giá
trình độ ngoại ngữ của học sinh, sinh viên một cách quyết liệt. Nhưng vì chưa theo

kịp cơng nghệ nên nhiều trường học cịn tổ chức theo tư duy cũ, khơng an tồn và
tốn kém. Để giải quyết vấn đề đó, em đã phát triển đề tài “xây dựng hệ thống thi
trắc nghiệm tiếng Anh trực tuyến” giúp cho hoạt động quản lý và tổ chức thi hiệu
quả, thuận tiện hơn.
Hệ thống sẽ bao gồm:
- Hệ thống quản lý dành cho admin;
- Hệ thống quản lý dành cho giảng viên.
- Hệ thống quản lý dành cho phịng Cơng tác sinh viên.
- Hệ thống thi và xem điểm dành cho sinh viên


ĐẠI HỌC ĐÀ NẴNG
TRƯỜNG ĐẠI HỌC BÁCH KHOA
KHOA CÔNG NGHỆ THƠNG TIN

CỘNG HỊA XÃ HƠI CHỦ NGHĨA VIỆT NAM

Độc lập - Tự do - Hạnh phúc

NHIỆM VỤ ĐỒ ÁN TỐT NGHIỆP
Họ tên sinh viên: Phạm Ngọc Được
Số thẻ sinh viên: 102150093
Lớp: 15T2
Khoa:CNTT
Ngành: Công nghệ phần mềm
1. Tên đề tài đồ án:
Xây dựng website thi trắc nghiệm tiếng Anh trực tuyến
2. Đề tài thuộc diện: ☐ Có ký kết thỏa thuận sở hữu trí tuệ đối với kết quả thực
hiện
3. Nội dung các phần thuyết minh và tính tốn:

- Giới thiệu mở đầu
- Các nghiên cứu lý thuyết
- Phân tích thiết kế hệ thống
- Triển khai và đánh giá
4. Họ tên người hướng dẫn: Ths. Nguyễn Văn Nguyên
5. Ngày giao nhiệm vụ đồ án: 11/09/2019.
6. Ngày hoàn thành đồ án: 19 / 12 /2019.

Trưởng Bộ môn Công nghệ phần mềm

Đà Nẵng, ngày 19 tháng 12năm 2019
Người hướng dẫn

TS. Lê Thị Mỹ Hạnh

ThS. Nguyễn Văn Nguyên


LỜI NĨI ĐẦU

Trong suốt thời gian thực hiện và hồn thành đồ án này, em đã nhận được sự
giúp đỡ và hướng dẫn tận tình của các Thầy, các Cơ và các bạn trong Khoa Công
nghệ Thông tin Trường Đại học Bách khoa - Đại học Đà Nẵng. Em xin gửi lời cảm
ơn chân thành và sâu sắc tới các Thầy Cô trong Khoa đã giảng dạy và truyền đạt
những kiến thức cần thiết, những kinh nghiệm quý báu cho em có thể thực hiện đồ
án này.
Trước tiên chúng em xin chân thành cảm ơn thầy ThS. Nguyễn Văn Nguyên,
người đã từng bước hướng dẫn, giúp đỡ em trong quá trình thực hiện đồ án tốt
nghiệp của mình.
Thứ hai, em xin được gửi lời cảm ơn đến công ty Gameloft Vietnam, công ty

FPT Software và các anh trong công ty đã hỗ trợ, tạo điều kiện cho em tiếp cận với
cơng nghệ mới.
Để có được kết quả như ngày hơm nay, chúng em rất biết ơn gia đình và
những người thân trong gia đình đã động viên, khích lệ, tạo mọi điều kiện thuận lợi
nhất về vật chất lẫn tinh thần trong suốt quá trình học tập cũng như quá trình thực
hiện đề tài tốt nghiệp này.
Trong quá trình học tập, cũng như trong quá trình làm đồ án tốt nghiệp khơng
thể tránh khỏi những thiếu sót, em rất mong được sự góp ý quý báu của tất cả các
thầy cô giáo cũng như tất cả các bạn để đồ án tốt nghiệp của em được hoàn thiện
hơn.
Một lần nữa em xin chân thành cảm ơn và kính chúc quý Thầy Cô dồi dào sức
khỏe và thành công trong cuộc sống.

Đà Nẵng, ngày 19 tháng 12 năm 2019
Sinh viên thực hiện

Phạm Ngọc Được


CAM ĐOAN

Tôi xin cam đoan:
1. Những nội dung trong đồ án này là do tôi thực hiện dưới sự hướng dẫn trực

tiếp của thầy ThS. Nguyễn Văn Nguyên.
2. Mọi tham khảo dùng trong đồ án đều được trích dẫn rõ ràng tên tác giả, tên

cơng trình, thời gian, địa điểm cơng bố.
3. Nếu có những sao chép khơng hợp lệ, vi phạm, tơi xin chịu hồn tồn trách


nhiệm.

Đà Nẵng, ngày 19 tháng 12 năm 2019
Sinh viên thực hiện

Phạm Ngọc Được


ĐẠI HỌC ĐÀ NẴNG  TRƯỜNG ĐẠI HỌC BÁCH KHOA
KHOA CƠNG NGHỆ THƠNG TIN
54, Nguyễn Lương Bằng, Hồ Khánh, Liên Chiểu, TP. Đà Nẵng
Tel. 84.511.3.736.949, Fax. 84.511.842.771 - Website: itf.dut.edu.vn - E-mail:

PHIẾU DUYỆT ĐỒ ÁN TỐT NGHIỆP
I. Phần dành cho Sinh viên
1. Họ và tên: Phạm Ngọc Được

2. Mã Sinh viên: 102150093

3. Lớp: 15T2

4. Tên đề tài: Xây dựng hệ thống website thi trắc nghiệm tiếng Anh trực tuyến
5. Họ và tên GVHD: ThS. Nguyễn Văn Nguyên

6. Điện thoại: 0935699695

7. E-mail:
II. Phần dành cho Hội đồng
Nội dung đánh giá


STT

Kết luận

1.

Trình bày báo cáo theo đúng mẫu qui định của Khoa

2.

Khơng có sự sao chép nội dung báo cáo và chương
trình đã có

3.

Biên dịch mã nguồn và chạy được chương trình

4.

Có kịch bản thực hiện với dữ liệu thử nghiệm

5.

Kết quả thực hiện chương trình đúng theo báo cáo

6.

Có sự đóng góp, phát triển của tác giả trong đồ án

Ý kiến khác: ...........................................................................................................................

..................................................................................................................................................
Kết luận:

 Đạt yêu cầu

 Phải sửa chữa lại

 Không đạt yêu cầu

Đà Nẵng, ngày 19 tháng 12 năm 2019
Chủ tịch Hội đồng

Cán bộ duyệt kiểm tra

(Ký và ghi họ tên)

(Ký và ghi họ tên)


Xây dựng hệ thống website thi trắc nghiệm tiếng Anh trực tuyến

MỤC LỤC
CHƯƠNG 1: CƠ SỞ LÝ THUYẾT
3
1.1. Phân tích hiện trạng thi trắc nghiệm tiếng Anh trực tuyến ................................ 3
1.2. Nghiên cứu lý thuyết .......................................................................................... 3
1.2.1.
Tổng quan về Java Servlet / Jsp ........................................................ 3
1.2.2.
Mơ hình MVC (Model – View - Controller) .................................... 5

1.2.3.
Tổng quan về Struts Framework ...................................................... 6
1.2.4.
Tổng quan về công nghệ Ajax .......................................................... 9
1.3. Kết chương ....................................................................................................... 10
CHƯƠNG 2: PHÂN TÍCH VÀ THIẾT KẾ HỆ THỐNG
11
2.1. Phân tích nghiệp vụ hệ thống ........................................................................... 11
2.1.1.
Nghiệp vụ của Admin ..................................................................... 11
2.1.2.
Nghiệp vụ của phịng cơng tác sinh viên ........................................ 11
2.1.3.
Nghiệp vụ của giảng viên ............................................................... 11
2.2. Thiết kế hệ thống .............................................................................................. 12
2.2.1.
Sơ đồ phân rã chức năng................................................................. 12
2.2.2.
Biểu đồ ca sử dụng ......................................................................... 12
2.2.3.
Đặc tả ca sử dụng ............................................................................ 18
2.2.4.
Biểu đồ tuần tự ................................................................................ 23
2.2.5.
Biểu đồ hoạt động ........................................................................... 24
2.2.6.
Biểu đồ lớp...................................................................................... 26
2.2.7.
Thiết kế cơ sở dữ liệu ..................................................................... 27
2.3. Kết chương ....................................................................................................... 27

CHƯƠNG 3: TRIỂN KHAI VÀ ĐÁNH GIÁ
28
3.1. Yêu cầu cấu hình máy chủ ............................................................................... 28
3.2. Giao diện hệ thống Website ............................................................................. 28
3.2.1.
Giao diện một số chức năng của admin .......................................... 28
3.2.2.
Giao diện một số chức năng của phịng cơng tác sinh viên ............ 30
3.2.3.
Giao diện một số chức năng của giảng viên ................................... 31
3.2.4.
Giao diện một số chức năng của sinh viên ..................................... 32
3.3. Kết chương ....................................................................................................... 36
KẾT LUẬN VÀ HƯỚNG PHÁT TRIỂN
37
1. Kết quả đạt được ............................................................................................ 37
2. Hướng phát triển ............................................................................................ 37
TÀI LIỆU THAM KHẢO
SVTH: Phạm Ngọc Được

38
GVHD: ThS. Nguyễn Văn Nguyên

1


Xây dựng hệ thống website thi trắc nghiệm tiếng Anh trực tuyến

DANH SÁCH HÌNH ẢNH


Hình 1: Sơ đồ kiến trúc của Servlet ............................................................................4
Hình 2: Sơ đồ kiến trúc của jsp ...................................................................................5
Hình 3: Mơ hình MVC ................................................................................................6
Hình 4: Kiến trúc struts 1 Framework ........................................................................8
Hình 5: Sơ đồ hoạt động của Ajax ..............................................................................9
Hình 6: Sơ đồ phân rã chức năng của hệ thống ........................................................12
Hình 7: Biểu đồ ca sử dụng chức năng Quản lý chung .............................................12
Hình 8:Biểu đồ ca sử dụng chức năng quản lý danh sách sinh viên .........................14
Hình 9: Biểu đồ ca sử dụng của chức năng quản lý điểm .........................................15
Hình 10: Biểu đồ ca sử dụng của chức năng ra đề ....................................................15
Hình 11: Biểu đồ ca sử dụng của chức năng quản lý danh sách kỳ thi.....................16
Hình 12: Biểu đồ ca sử dụng của chức năng tham gia thi ........................................16
Hình 19: Biểu đồ tuần tự chức năng Đăng nhập .......................................................23
Hình 20: Biểu đồ tuần tự chức năng đăng ký bài thi (tổ chức thi) ............................24
Hình 21: Thiết kế cở sở dữ liệu .................................................................................27
Hình 22: Giao diện chức năng đăng nhập của hệ thống ...........................................28
Hình 23: Gia diện chức năng quản lý user của admin ..............................................29
Hình 24: Giao diện chức năng import danh sách sinh viên của nhân viên phòng ban
...................................................................................................................................30
Hình 25: Giao diện chức năng quản lý danh sách và in bảng điểm sinh viên ..........30
Hình 26: Giao diện chức năng tổ chức thi của giảng viên ........................................31
Hình 27: Giao diện tạo mới bài thi............................................................................31
Hình 28: Giao diện chức năng tạo mới câu hỏi đề thi ..............................................32
Hình 29: Giao diện chức năng hiển thị trang cá nhân của sinh viên ........................32
Hình 30: Giao diện hiển thị mơ tả bài thi ..................................................................33
Hình 31: Giao diện bắt đầu thi ..................................................................................33
Hình 32: Giao diện chức năng thi .............................................................................34
Hình 33: Giao diện hiển thị kết quả sau khi thi ........................................................35

SVTH: Phạm Ngọc Được


GVHD: ThS. Nguyễn Văn Nguyên

2


Xây dựng hệ thống website thi trắc nghiệm tiếng Anh trực tuyến

DANH SÁCH BẢNG
Bảng
Bảng
Bảng
Bảng
Bảng
Bảng
Bảng
Bảng
Bảng

1: Ca sử dụng đăng nhập ................................................................................18
2: Ca sử dụng chọn xem danh sách user .........................................................19
3: Ca sử dụng chọn quản lý quyền user ..........................................................19
4: Ca sử dụng quản lý danh sách sinh viên.....................................................20
5: Ca sử dụng tạo đề thi ..................................................................................20
6: Ca sử dụng tạo kỳ thi ..................................................................................21
7: Ca sử dụng tổ chức thi ................................................................................21
8: Ca sử dụng tham gia thi ..............................................................................22
9: Ca sử dụng xem lịch sử thi của sinh viên ...................................................22

SVTH: Phạm Ngọc Được


GVHD: ThS. Nguyễn Văn Nguyên

3


Xây dựng hệ thống website thi trắc nghiệm tiếng Anh trực tuyến

DANH SÁCH TỪ VIẾT TẮT

Từ viết tắt
CSDL
JSP
AJAX

Diễn giải
Cơ Sở Dữ Liệu
JavaServer Pages

Asynchronous Javascript And Xml

CGI

Common Gateway Interface

API

Application Programming Interface

MVC


Mode View Controller

URL

Uniform Resource Locator

SVTH: Phạm Ngọc Được

GVHD: ThS. Nguyễn Văn Nguyên

4


Xây dựng hệ thống website thi trắc nghiệm tiếng Anh trực tuyến

MỞ ĐẦU
1. Tổng quan về đề tài
Ngày nay công nghệ thông tin đã trở thành một phần tất yếu của cuộc sống con
người, khơng những thế nó cịn góp phần phát triển kinh tế trong tất cả các lĩnh vực
từ kinh tế, y tế đến giáo dục. Việc ứng dụng công nghệ thông tin trong các hoạt
động tổ chức thi trực tuyến khiến việc học và thi ở các trường học trở nên dễ dàng,
chủ động và tiết kiệm hơn.
Hiện nay tại các trường đại học và phổ thông trung học, hoạt động dạy và học
tiếng Anh diễn ra quyết liệt. Tuy nhiên, việc tổ chức thi vẫn còn tư duy cũ là thi trên
giấy, thi offline, gây tốn kém cho nhà trường, học sinh mà hiệu quả chưa cao.
Để giải quyết hạn chế nêu trên, cần thiết xây dựng một hệ thống đủ mạnh, bảo
mật cao, giao diện thân thiện hỗ trợ cho việc học và thi tiếng Anh tại các trường
học, góp phần nâng cao hiệu quả trong công tác đánh giá, phổ cập tiếng Anh cho
sinh viên, học sinh.

2. Mục đích và ý nghĩa của đề tài
2.1. Mục đích
Xây dựng hệ thống thi trắc nghiệm tiếng Anh trực tuyến:
-

Hỗ trợ hiệu quả hơn hoạt động quản lý của Nhà trường;

-

Hỗ trợ sinh viên, học sinh làm bài thi hiệu quả, quản lý điểm của chính
mình.

2.2. Ý nghĩa
Nâng cao hiệu quả trong công tác quản lý thi trắc nghiệm tiếng Anh.
3. Phương pháp thực hiện
-

Phương pháp phân tích tổng hợp từ nguồn tài liệu trên mạng;

-

Phương pháp phân tích thiết kế hệ thống theo hướng đối tượng;

-

Phương pháp thử nghiệm, đánh giá kết quả.

SVTH: Phạm Ngọc Được

GVHD: ThS. Nguyễn Văn Nguyên


1


Xây dựng hệ thống website thi trắc nghiệm tiếng Anh trực tuyến

4. Bố cục của đồ án
Đồ án bao gồm các nội dung sau:
Mở đầu
Chương 1: CƠ SỞ LÝ THUYẾT
Chương 2: PHÂN TÍCH VÀ THIẾT KẾ HỆ THỐNG
Chương 3: TRIỂN KHAI THỰC TẾ VÀ ĐÁNH GIÁ KẾT QUẢ
Kết luận và hướng phát triển.

SVTH: Phạm Ngọc Được

GVHD: ThS. Nguyễn Văn Nguyên

2


Xây dựng hệ thống website thi trắc nghiệm tiếng Anh trực tuyến

CHƯƠNG 1:
1.1.

CƠ SỞ LÝ THUYẾT

Phân tích hiện trạng thi trắc nghiệm tiếng Anh trực tuyến


Hiện nay phổ cập tiếng Anh cho toàn bộ sinh viên và học sinh đang là vấn đề
cấp thiết tại các trường đại học, cao đẳng và trung học phổ thơng. Nhằm mục đích
hỗ trợ hiệu quả cho các trường học tổ chức quản lý và đánh giá chính xác trình độ
tiếng Anh của học sinh sinh viên nên em đã xây dựng hệ thống thi trắc nghiệm tiếng
Anh trực tuyến tại trường đại học Bách Khoa Đà Nẵng.
1.2.

Nghiên cứu lý thuyết

1.2.1. Tổng quan về Java Servlet / Jsp
Công nghệ Servlet được sử dụng để tạo ra ứng dụng web (nằm ở phía máy
chủ và tạo ra trang web động). Sử dụng Servlet, bạn có thể thu thập thông tin đầu
vào từ người dùng thông qua các trang web, hiển thị các bản ghi từ một cơ sở dữ
liệu hoặc một nguồn khác.Công nghệ servlet là mạnh mẽ và có khả năng mở rộng.
Trước Servlet, ngôn ngữ kịch bản CGI (Common Gateway Interface) được sử dụng
phổ biến như một ngơn ngữ lập trình phía máy chủ.
Servlet có thể được mơ tả bằng nhiều cách, tùy thuộc vào ngữ cảnh:




Servlet là một công nghệ được sử dụng để tạo ra ứng dụng web.
Servlet là một API cung cấp các interface và lớp bao gồm các tài liệu.
Servlet là một thành phần web được triển khai trên máy chủ để tạo ra trang
web động.

Có nhiều interface và các lớp trong API servlet như Servlet, GenericServlet,
HttpServlet, ServletRequest, ServletResponse, ...

SVTH: Phạm Ngọc Được


GVHD: ThS. Nguyễn Văn Nguyên

3


Xây dựng hệ thống website thi trắc nghiệm tiếng Anh trực tuyến

Sơ đồ dưới đây cho thấy vị trí của Servlets trong một Ứng dụng Web.

Hình 1: Sơ đồ kiến trúc của Servlet
Servlet thực hiện các nhiệm vụ chính sau đây:










Đọc dữ liệu rõ ràng do khách hàng (trình duyệt) gửi. Điều này bao gồm một
mẫu HTML trên một trang Web hoặc nó cũng có thể đến từ một applet hoặc
một chương trình khách hàng HTTP tùy chỉnh.
Đọc dữ liệu yêu cầu HTTP ẩn được gửi bởi khách hàng (trình duyệt). Điều
này bao gồm các cookie, loại phương tiện truyền thơng và các chương trình
nén mà trình duyệt hiểu được, v.v.
Xử lý dữ liệu và tạo ra các kết quả. Q trình này có thể u cầu nói chuyện
với một cơ sở dữ liệu, thực hiện một cuộc gọi RMI hoặc CORBA, gọi một

dịch vụ Web, hoặc tính trực tiếp phản hồi.
Gửi dữ liệu rõ ràng (tức là tài liệu) tới khách hàng (trình duyệt). Tài liệu này
có thể được gửi bằng nhiều định dạng, bao gồm văn bản (HTML hoặc
XML), nhị phân (hình ảnh GIF), Excel, v.v ...
Gửi phản hồi HTTP ẩn cho khách hàng (trình duyệt). Điều này bao gồm nói
với trình duyệt hoặc các trình khách khác loại tài liệu đang được trả về (ví
dụ, HTML), thiết lập cookie và các tham số bộ nhớ đệm, và các tác vụ khác.

Các lớp của gói servlet thực hiện các đặc tả Java Servlet và JSP. Các servlet Java
đã được tạo ra và biên dịch giống như các lớp Java khác. Sau khi cài đặt gói servlet
và thêm chúng vào Classpath của máy tính, bạn có thể biên dịch các servlet bằng
trình dịch Java của JDK hoặc bất kỳ trình biên dịch hiện tại nào khác.
JSP là viết tắt của JavaServer Pages là một công nghệ để phát triển các trang
web động. JSP giúp các nhà phát triển chèn java code vào các trang HTML bằng
cách sử dụng các thẻ JSP đặc biệt.

SVTH: Phạm Ngọc Được

GVHD: ThS. Nguyễn Văn Nguyên

4


Xây dựng hệ thống website thi trắc nghiệm tiếng Anh trực tuyến

JSP là một kiểu Java servlet được thiết kế để tạo ra giao diện người dùng cho
một ứng dụng Java web. Các nhà phát triển web viết các JSP như các tệp văn bản
kết hợp mã HTML hoặc XHTML, các phần tử XML, các action và lệnh JSP.
Sử dụng JSP, bạn có thể thu thập dữ liệu đầu vào từ người dùng thơng qua các
Form của trang web, trình bày các bản ghi từ một cơ sở dữ liệu hoặc một nguồn

khác, và tạo các trang web động.
Các thẻ JSP có thể được sử dụng cho nhiều mục đích khác nhau, chẳng hạn như
truy xuất thông tin từ cơ sở dữ liệu hoặc đăng ký mới, truy cập các thành phần
JavaBeans, kiểm soát giữa các trang và chia sẻ thơng tin giữa các request, các trang
vv.

Hình 2: Sơ đồ kiến trúc của jsp
1.2.2. Mơ hình MVC (Model – View - Controller)
Mơ hình MVC là một chuẩn mơ hình và đóng vai trị quan trọng trong q
trình xây dựng – phát triển – vận hành và bảo trì một hệ thống hay một ứng dụng –
phần mềm. Nó tạo ra một mơ hình 3 lớp Model – View – Controller (hình 1.2) tách
biệt và tương tác nhau, giúp các chuyên gia có thể dễ dàng dựa vào mơ hình để trao
đổi và xử lý những nghiệp vụ một cách nhanh chóng. Mơ hình MVC có thể áp dụng
cho các dự án trong môi trường Windows, Linux… và sử dụng bất kỳ ngôn ngữ nào
như PHP, ASP, JSP…

SVTH: Phạm Ngọc Được

GVHD: ThS. Nguyễn Văn Nguyên

5


Xây dựng hệ thống website thi trắc nghiệm tiếng Anh trực tuyến

Hình 3: Mơ hình MVC
Mơ hình MVC được chia làm 3 lớp xử lý gồm Model – View – Controller:
-

Model: là nơi chứa những nghiệp vụ tương tác với dữ liệu hoặc hệ quản trị

cơ sở dữ liệu (mysql, mssql… ); nó sẽ bao gồm các class/function xử lý
nhiều nghiệp vụ như kết nối database, truy vấn dữ liệu, thêm – xóa – sửa dữ
liệu…;

-

View: là nơi chứa những giao diện như một nút bấm, khung nhập, menu,
hình ảnh… nó đảm nhiệm nhiệm vụ hiển thị dữ liệu và giúp người dùng
tương tác với hệ thống ;

-

Controller: là nơi tiếp nhận những yêu cầu xử lý được gửi từ người dùng, nó
sẽ gồm những class/function xử lý nhiều nghiệp vụ logic giúp lấy đúng dữ
liệu thông tin cần thiết nhờ các nghiệp vụ lớp Model cung cấp và hiển thị dữ
liệu đó ra cho người dùng nhờ lớp View.

1.2.3. Tổng quan về Struts Framework
Struts framework ban đầu được tạo ra bởi Craig McClanahan và tặng cho
Apache Foundation vào tháng 5 năm 2000 và Struts 1.0 đã được phát hành vào
tháng 6 năm 2001. Phiên bản ổn định hiện tại của Struts là 2.3.33 được phát hành
vào tháng 7 năm 2017.
Struts Framework được xây dựng trên mơ hình MVC phân tầng, phân lớp,
giúp dễ quản lý và bảo trì. Bên cạnh đó, hỗ trợ nhiều các thể Struts Tag trong file
SVTH: Phạm Ngọc Được

GVHD: ThS. Nguyễn Văn Nguyên

6



Xây dựng hệ thống website thi trắc nghiệm tiếng Anh trực tuyến

Jsp giúp các lập trình viên làm việc nhanh chóng và hiệu quả hơn khi tạo và phát
triển project trên nền tảng này.
Struts là một tập hợp các thư viện Java và có thể chia ra làm các nhóm sau:
+ Framework cơ sở
+ Thư viện thẻ JSP
+ Tiles plugin
+ Validator plugin
a. Framework cơ sở
Framework cơ sở cung cấp các tính năng MVC cốt lõi. Nền tảng của framework cơ
sở là Controller servlet: ActionServlet. Phần còn lại của framework cơ sở bao gồm
các lớp cơ sở mà ứng dụng của bạn sẽ extend và các class tiện ích. Nổi bật nhát
trong các lớp cơ sở là lớp Action và lớp ActionForm. Lớp Action được sử dụng bởi
ActionServlet để sử lý các request xác định. Lớp ActionForm được sử dụng để
capture dữ liệu từ các HTML form và được sử dụng để chuyển dữ liệu trở lại View
để generate response.
b. Thư viện thẻ JSP
Struts đưa ra các thư viện thẻ để hỗ trợ việc lập trình View logic trong JSP. Các thư
viện thẻ JSP cho phép các JSP author sử dụng các thẻ giống HTML.
+ HTML: Sử dụng để generate các THML form tương tac với Struts API
+ Bean: Sử dụng để làm việc với các Java bean object trong JSP
+ Logic: Sử dụng để implement các logic điều kiện đơn giản trong JSP
+ Nested: Sử dụng để cho phép các mức nested tùy ý
c. Tiles plugin
Tiles là một JSP template framework giúp thuận tiện cho việc tái sử dụng mã
HTML.
d. Validator plugin
Validator là một framework với khả năng thực hiện xác nhận tính hợp lệ của dữ liệu

ở cả phía server và client.
5. Chu kì sống của một Struts
Trước khi đi vào chi tiết các lớp, nghía qua một chút về tiến trình thực hiện của một
ứng dụng Web sử dụng Struts cũng có lẽ khơng thừa.

SVTH: Phạm Ngọc Được

GVHD: ThS. Nguyễn Văn Nguyên

7


Xây dựng hệ thống website thi trắc nghiệm tiếng Anh trực tuyến

1. Trình duyệt tạo một request tới ứng dụng Struts sẽ được xử lý bới ActionServlet
(Controller).
2. ActionServlet (Controller) populate subclass của ActionForm (View), do ta viết,
với dữ liệu form HTML và invoke method validate() của nó.
3. ActionServlet (Controller) execute subclass của Action do ta viết (Controller).
4. Subclass của Action (Controller) đó sẽ tương tác với model component và chuẩn
bị dữ liệu cho để hiển thị.
5. Sau đó subclass của Action (Controller) đó sẽ chuyển điều khiển tới JSP (View).
6. JSP (View) sử dụng dữ liệu nhận được để generate response về cho trình duyệt.

Hình 4: Kiến trúc struts 1 Framework

SVTH: Phạm Ngọc Được

GVHD: ThS. Nguyễn Văn Nguyên


8



×