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

XÂY DỰNG WEBSITE HOCWEB.VN HƯỚNG DẪN THIẾT KẾ VÀ TRIỂN KHAI ỨNG DỤNG WEB TRÊN NỀN TẢNG MÃ NGUỒN MỞ JAVA

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 (6.26 MB, 343 trang )

BỘ GIÁO DỤC VÀ ĐÀO TẠO
TRƯỜNG ĐẠI HỌC NÔNG LÂM TP HCM
KHOA CÔNG NGHỆ THÔNG TIN

LUẬN VĂN TỐT NGHIỆP
XÂY DỰNG WEBSITE HOCWEB.VN
HƯỚNG DẪN THIẾT KẾ VÀ TRIỂN KHAI
ỨNG DỤNG WEB TRÊN NỀN TẢNG MÃ
NGUỒN MỞ JAVA
Ngành

: Hệ thống thông tin

Niên khoá

: 2007-2011

Lớp

: DH07DTH

Sinh viên thực hiện

: Hoàng Anh Hòa
Nguyễn Thị Thúy Lữ
Nguyễn Hoàng Sơn
Lê Nhật Tùng

TP.HỒ CHÍ MINH, 15 tháng 8 năm 2011
 



BỘ GIÁO DỤC VÀ ĐÀO TẠO
TRƯỜNG ĐẠI HỌC NÔNG LÂM TP HCM
KHOA CÔNG NGHỆ THÔNG TIN

LUẬN VĂN TỐT NGHIỆP
XÂY DỰNG WEBSITE HOCWEB.VN
HƯỚNG DẪN THIẾT KẾ VÀ TRIỂN KHAI
ỨNG DỤNG WEB TRÊN NỀN TẢNG MÃ
NGUỒN MỞ JAVA
Giáo viên hướng dẫn:

Sinh viên thực hiện:

ThS. Mai Anh Thơ

Hoàng Anh Hòa

07130040

Nguyễn Thị Thúy Lữ

07130073

Nguyễn Hoàng Sơn

07130108

Lê Nhật Tùng


07130142

TP.HỒ CHÍ MINH, 15 tháng 8 năm 2011

 


CÔNG TRÌNH HOÀN TẤT TẠI
TRƯỜNG ĐẠI HỌC NÔNG LÂM TP HCM

Cán bộ hướng dẫn: ThS. Mai Anh Thơ

Cán bộ phản biện: ThS. Nguyễn Thanh Phước

Luận văn cử nhân được bảo vệ tại HỘI ĐỒNG CHẤM LUẬN VĂN CỬ
NHÂN TRƯỜNG ĐẠI HỌC NÔNG LÂM TP HCM ngày 31 tháng 8 năm 2011.

 
 


Bộ Giáo Dục và Đào Tạo

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

Trường ĐH NÔNG LÂM TpHCM

Độc Lập-Tự Do-Hạnh Phúc

NHIỆM VỤ LUẬN VĂN CỬ NHÂN

Họ tên sinh viên: HOÀNG ANH HÒA

Phái: Nam

Ngày tháng năm sinh: 12/09/1989

Nơi sinh: Bắc Giang

Chuyên ngành: Mạng máy tính

Ngành: Công nghệ thông tin

Họ tên sinh viên: NGUYỄN THỊ THÚY LỮ

Phái: Nữ

Ngày tháng năm sinh: 12/10/1988

Nơi sinh: Bình Phước

Chuyên ngành: Mạng máy tính

Ngành: Công nghệ thông tin

Họ tên sinh viên: NGUYỄN HOÀNG SƠN

Phái: Nam

Ngày tháng năm sinh: 04/12/1989


Nơi sinh: TP Hồ Chí Minh

Chuyên ngành: Hệ thống thông tin

Ngành: Công nghệ thông tin

Họ tên sinh viên: LÊ NHẬT TÙNG

Phái: Nam

Ngày tháng năm sinh: 11/07/1989

Nơi sinh: Trà Vinh

Chuyên ngành: Mạng máy tính

Ngành: Công nghệ thông tin

I. TÊN ĐỀ TÀI: Xây dựng website hocweb.vn hướng dẫn thiết kế và triển khai
ứng dụng web trên nền tảng mã nguồn mở java
II. NHIỆM VỤ VÀ NỘI DUNG:
Nhiệm vụ:
- Tìm hiểu xây dựng website HOCWEB.VN hướng dẫn học thiết kế và triển khai
một ứng dụng web.
- Giới thiệu, hướng dẫn và so sánh một số công nghệ web hiện nay trên nền tảng mã
nguồn mở Java.
Nội dung nghiên cứu:
- Tìm hiểu các ngôn ngữ thiết kế web: HTML, CSS, Javascript…
- Tìm hiểu các công nghệ web trên nền tảng mã nguồn mở Java: JSP/Servlet,
framework ZK…

 
 


- Xây dựng website hướng dẫn học thiết kế và triển khai ứng dụng web vào thực tế
HOCWEB.VN.
- Xây dựng bộ bài học hướng dẫn thiết kế, hiện thực và triển khai một ứng dụng web
bằng công nghệ JSP/Servlet.
III. NGÀY GIAO NHIỆM VỤ: 20/04/2011
IV. NGÀY HOÀN THÀNH NHIỆM VỤ: 31/08/2011
V. HỌ VÀ TÊN CÁN BỘ HƯỚNG DẪN: ThS. Mai Anh Thơ

Ngày

/ /

CÁN BỘ HƯỚNG DẪN

 
 

Ngày

/ /

CHỦ NHIỆM CHUYÊN NGÀNH

Ngày

/ /


KHOA CNTT


LỜI CẢM ƠN

Trong suốt quá trình học tập và hoàn thành luận văn, chúng
em đã nhận được sự hướng dẫn, giúp đỡ quý báu của Cha Mẹ,
Thầy Cô và các bạn.
Trước hết, chúng con xin nói lên lòng biết ơn sâu sắc đối với
Cha Mẹ đã chăm sóc, nuôi dạy chúng con nên người.
Với lòng kính trọng và biết ơn sâu sắc, chúng em xin được bày
tỏ lời cảm ơn chân thành tới Ban Giám Hiệu cùng toàn thể Thầy Cô
Khoa Công nghệ thông tin trường Đại Học Nông Lâm đã truyền đạt
cho chúng em những kiến thức quý báu, đồng thời tạo điều kiện
thuận lợi giúp chúng em hòan thành tốt luận văn tốt nghiệp.
Đặc biệt, chúng em xin gửi lời tri ân chân thành nhất đến Cô
Mai Anh Thơ, người đã luôn quan tâm giúp đỡ, chỉ bảo và động
viên chúng em trong suốt quá trình thực hiện luận văn.
Bên cạnh đó, chúng em xin gửi lời cám ơn đến các bạn đã hợp
tác, cung cấp tư liệu, giúp chúng em hoàn thành các bài học, ứng
dụng, ví dụ góp phần làm cho luận văn thêm giá trị.
Chúng em đồng gửi lời cám ơn đến các anh chị, bạn bè sinh
viên cùng khoa đã luôn bên cạnh động viên tinh thần, chia sẻ kinh
nghiệm quý báu góp phần cho thành công của luận văn.
Mặc dù chúng em đã cố gắng hoàn thành đồ án trong phạm vi
và khả năng cho phép, nhưng chắc chắn không tránh khỏi những
thiếu sót nhất định. Chúng em kính mong nhận được sự chỉ bảo của
quý Thầy Cô và sự góp ý chân thành của các bạn.
Chúng em kính chúc Cha Mẹ luôn dồi dào sức khỏe, kính chúc

quý Thầy Cô luôn khỏe mạnh, và thành công trong công tác trồng
người, mến chúc các bạn luôn vững vàng trên con đường học vấn
và sự nghiệp.
Xin chân thành cám ơn!

 
 


DANH SÁCH CHỮ VIẾT TẮT
CNTT

Công Nghệ Thông Tin

CSDL

Cơ Sở Dữ Liệu

CPU

Central Processing Unit

URL

Uniform Resource Locator

HTTP

Hyper Text Transfer Protocol


HTTPS

Hypertext Transfer Protocol Secure

FTP

File Transfer Protocol

SDK

Software Development Kit

JDK

Java Development Kit

I
 


DANH MỤC CÁC HÌNH

Trang

Hình 1: Website w3schools.com ......................................................................4 
Hình 2: Website www.javapassion.com ...........................................................6 
Hình 3: Các khóa học của javapassion .............................................................7 
Hình 4: Sơ đồ kiến trúc hệ thống ....................................................................18 
Hình 5: Sơ đồ kiến trúc phần mềm .................................................................18 
Hình 6: Mô hình Usecase tổng quát................................................................19 

Hình 7: Sơ đồ Usecase cho người dùng Khách ..............................................20 
Hình 8: Sơ đồ Activity của Usecase đăng nhập ..............................................21 
Hình 9: Sơ đồ Activity của Usecase đăng ký .................................................22 
Hình 10: Sơ đồ Activity của Usecase quên mật khẩu.....................................24 
Hình 11: Sơ đồ Activity của Usecase xem Công cụ .......................................25 
Hình 12: Sơ đồ Activity của Usecase tìm kiếm Tài liệu ................................26 
Hình 13: Sơ đồ Activity của Usecase vào Diễn đàn .......................................27 
Hình 14: Sơ đồ Activity của Usecase xem Liên kết .......................................28 
Hình 15: Sơ đồ Activity của Usecase xem Bài học và Ứng dụng ..................29 
Hình 16: Sơ đồ Usecase cho người dùng Thành viên.....................................30 
Hình 17: Sơ đồ Activity của Usecase đăng xuất.............................................31 
Hình 18: Sơ đồ Activity của Usecase chỉnh sửa thông tin Tài khoản ............32 
Hình 19: Sơ đồ Activity của Usecase tìm kiếm Câu hỏi đã đặt......................33 
Hình 20: Sơ đồ Activity của Usecase tải Công cụ ..........................................34 
Hình 21: Sơ đồ Activity của Usecase tải Mã nguồn .......................................35 
Hình 22: Sơ đồ Activity của Usecase đặt Câu hỏi ..........................................36 
Hình 23: Sơ đồ Activity của Usecase tải Tài liệu ...........................................37 
Hình 24: Sơ đồ Usecase cho người dùng Quản trị .........................................38 
Hình 25: Sơ đồ Usecase Quản lý Người dùng ................................................39 
Hình 26: Sơ đồ Activity của Usecase xóa Người dùng ..................................40 
Hình 27: Sơ đồ Activity của Usecase chỉnh sửa thông tin Người dùng .........41 
II
 


Hình 28: Sơ đồ Activity của Usecase tìm kiếm Người dùng..........................42 
Hình 29: Sơ đồ Usecase Quản lý Tài liệu .......................................................42 
Hình 30: Sơ đồ Activity của Usecase thêm Tài liệu mới ...............................43 
Hình 31: Sơ đồ Activity của Usecase cập nhật Tài liệu .................................44 
Hình 32: Sơ đồ Usecase Quản lý Công cụ ......................................................45 

Hình 33: Sơ đồ Activity của Usecase thêm Công cụ mới ..............................46 
Hình 34: Sơ đồ Activity của Usecase cập nhật Công cụ ................................47 
Hình 35: Sơ đồ Activity của Usecase tìm kiếm Công cụ ...............................48 
Hình 36: Sơ đồ Usecase Quản lý Câu hỏi.......................................................48 
Hình 37: Sơ đồ Activity của Usecase trả lời Câu hỏi mới nhanh ...................49 
Hình 38: Sơ đồ Activity của Usecase trả lời Câu hỏi mới ..............................51 
Hình 39: Sơ đồ Usecase Quản lý Mã tải về ....................................................51 
Hình 40: Sơ đồ Usecase Quản lý Mã nguồn ...................................................53 
Hình 41: Sơ đồ Activity của Usecase thêm Mã nguồn mới ...........................54 
Hình 42: Sơ đồ Activity của Usecase cập nhật Mã nguồn .............................55 
Hình 43: Sơ đồ Activity của Usecase tìm kiếm Mã nguồn ............................56 
Hình 44: Sơ đồ Usecase Quản lý Bài học và Quản lý Ứng dụng ...................57 
Hình 45: Sơ đồ Activity của Usecase thêm Bài học mới ...............................58 
Hình 46: Sơ đồ Activity của Usecase cập nhật Bài học .................................60 
Hình 47: Sơ đồ Activity của Usecase xóa Bài học .........................................61 
Hình 48: Sơ đồ Activity của Usecase thêm Công cụ liên quan ......................62 
Hình 49: Sơ đồ Activity của Usecase thêm Ứng dụng liên quan ...................63 
Hình 50: Sơ đồ Activity của Usecase thêm Bài học liên quan .......................64 
Hình 51: Sơ đồ Activity của Usecase thêm Ứng dụng mới ............................65 
Hình 52: Sơ đồ Activity của Usecase cập nhật Ứng dụng..............................66 
Hình 53: Sơ đồ Activity của Usecase xóa Ứng dụng .....................................67 
Hình 54: Sơ đồ Activity của Usecase thêm Mã nguồn liên quan ...................68 
Hình 55: Sơ đồ Usecase Quản lý nội dung Bài học hoặc Ứng dụng ..............69 
Hình 56: Sơ đồ Activity của Usecase thêm Danh mục mới ...........................70 
III
 


Hình 57: Sơ đồ Activity của Usecase xóa Danh mục .....................................71 
Hình 58: Sơ đồ Activity của Usecase cập nhật Danh mục .............................73 

Hình 59: Sơ đồ Usecase Quản lý Trang..........................................................73 
Hình 60: Sơ đồ Activity của Usecase thêm Trang mới ..................................74 
Hình 61: Sơ đồ Activity của Usecase xóa Trang ............................................75 
Hình 62: Sơ đồ Activity của Usecase cập nhật Trang ....................................77 
Hình 63: Sơ đồ Usecase Quản lý Bài viết.......................................................77 
Hình 64: Sơ đồ Activity của Usecase thêm Bài viết.......................................78 
Hình 65: Sơ đồ Activity của Usecase xóa Bài viết .........................................79 
Hình 66: Sơ đồ Activity của Usecase cập nhật Bài viết .................................81 
Hình 67: Sơ đồ Usecase Quản lý Ví dụ ..........................................................81 
Hình 68: Sơ đồ Activity của Usecase thêm Ví dụ mới ...................................82 
Hình 69: Sơ đồ Activity của Usecase xóa Ví dụ ............................................83 
Hình 70: Sơ đồ Activity của Usecase xóa Ví dụ ............................................84 
Hình 71: Sơ đồ lớp của gói vn.hocweb.entity.................................................86 
Hình 72: Sơ đồ lớp của gói vn.hocweb.dao.interface .....................................87 
Hình 73: Sơ đồ lớp của gói vn.hocweb.dao.implement ..................................88 
Hình 74:Sơ đồ lớp của gói vn.hocweb.dao.implement (tiếp theo) .................90 
Hình 75: Sơ đồ Cơ sở dữ liệu (tổng quan) ......................................................91 
Hình 76: Sơ đồ cơ sở dữ liệu chi tiết cấu trúc của Bài học hoặc Ứng dụng ...92 
Hình 77: Sơ đồ cơ sở dữ liệu chi tiết các quan hệ của Bài học ......................93 
Hình 78: Sơ đồ cơ sở dữ liệu chi tiết Bài học và Công cụ..............................94 
Hình 79: Sơ đồ cơ sở dữ liệu chi tiết Bài học và Ứng dụng liên quan ...........95 
Hình 80: Sơ đồ cơ sở dữ liệu chi tiết Bài học và Ứng dụng ...........................95 
Hình 81: Sơ đồ cơ sở dữ liệu chi tiết Ứng dụng và Mã nguồn .......................96 
Hình 82: Sơ đồ cơ sở dữ liệu chi tiết Bài học, Ứng dụng và Câu hỏi ............97 
Hình 83: Sơ đồ các trang quản trị ...................................................................99 
Hình 84: Sơ đồ lớp của gói Entity của Shopping Online .............................100 
Hình 85: Sơ đồ lớp DAO của gói Entity của Shopping Online ....................101 
IV
 



Hình 86: Sơ đồ quan hệ Cơ sở dữ liệu của Shopping Online .......................101 
Hình 94: Sơ đồ Collaboration của chức năng Đăng ký Tài khoản ...............102 
Hình 95: Sơ đồ lớp của chức năng Đăng ký Tài khoản ................................103 
Hình 96: Giao diện trang signup.jsp .............................................................104 
Hình 97: Cấu hình file web.xml bằng Eclipse ..............................................110 
Hình 87: Sơ đồ Collaboration chức năng chỉnh sửa thông tin Người dùng .125 
Hình 88: Sơ đồ lớp chức năng chỉnh sửa thông tin Người dùng ..................126 
Hình 89: Giao diện trang chỉnh sửa thông tin người dùng ...........................126 
Hình 90: Sơ đồ Collaboration của chức năng Xóa Người dùng ...................136 
Hình 91: Sơ đồ lớp của chức năng Xóa Người dùng ....................................137 
Hình 92: Sơ đồ Collaboration của chức năng Tìm Người dùng ...................140 
Hình 93: Sơ đồ lớp của chức năng Tìm Người dùng ....................................141 
Hình 98: Sơ đồ Collaboration của chức năng Đăng nhập – Đăng xuất ........144 
Hình 99: Sơ đồ lớp của chức năng Đăng nhập - Đăng xuất .........................145 
Hình 100: Giao diện trang userLogin.jsp......................................................146 
Hình 101: Sơ đồ Activity của chức năng Quản lý Thể loại ..........................151 
Hình 102: Sơ đồ cấu trúc thư mục của chức năng Quản lý Thể loại ............152 
Hình 103: Sơ đồ các trang giao diện của chức năng Quản lý Thể loại ........153 
Hình 104: Giao diện trang login.jsp..............................................................154 
Hình 105: Giao diện trang list_category.jsp .................................................154 
Hình 106: Giao diện trang add_category.jsp ................................................155 
Hình 107: Giao diện trang edit_category.jsp ................................................156 
Hình 108: Giao diện trang list_category.jsp khi xóa Thể loại ......................157 
Hình 109: Giao diện trang list_product.jsp...................................................158 
Hình 110: Giao diện trang add_product.jsp ..................................................159 
Hình 111: Giao diện trang edit_product.jsp..................................................160 
Hình 112: Giao diện trang list_product.jsp khi xóa Sản phẩm .....................160 
Hình 113: Giao diện trang list_product_image.jsp .......................................161 
Hình 114: Giao diện trang add_product_image.jsp ......................................162 

V
 


Hình 115: Giao diện trang edit_product_image.jsp ......................................163 
Hình 116: Giao diện trang list_product_image.jsp khi xóa Hình ảnh ..........164 
Hình 117: Sơ đồ lớp của gói shop.data .........................................................175 
Hình 118: Sơ đồ Collaboration của chức năng Thêm Thể loại ....................198 
Hình 119: Sơ đồ lớp của chức năng Thêm Thể loại .....................................199 
Hình 120: Sơ đồ Collaboration của chức năng Sửa Thể loại .......................214 
Hình 121: Sơ đồ lớp của chức năng Sửa thể loại ..........................................215 
Hình 122: Sơ đồ Collaboration của chức năng Xóa Thể loại .......................228 
Hình 123: Sơ đồ lớp của chức năng Xóa Thể loại ........................................229 
Hình 124: Sơ đồ lớp của chức năng Xem danh sách Sản phẩm ...................231 
Hình 125:Sơ đồ Activity của chức năng Quản lý Sản phẩm ........................238 
Hình 126: Sơ đồ lớp của chức năng Quản lý Sản phẩm ...............................239 
Hình 127: Sơ đồ các trang giao diện của chức năng Quản lý Sản phẩm ......240 
Hình 128: Sơ đồ Collaboration của chức năng Thêm Sản phẩm..................241 
Hình 129: Sơ đồ lớp của chức năng Thêm Sản phẩm ..................................242 
Hình 130: Sơ đồ Collaboration của chức năng Xóa Sản phẩm ....................272 
Hình 131: Sơ đồ lớp của chức năng Xóa Sản phẩm .....................................273 
Hình 140: Mô hình Collaboration của chức năng hiển thị sản phẩm ...........276 
Hình 141: Sơ đồ lớp của chức năng hiển thị sản phẩm ................................277 
Hình 132: Sơ đồ Collaboration của chức năng Quản lý Giỏ hàng ..............284 
Hình 133: Sơ đồ lớp của chức năng Quản lý Giỏ hàng ................................285 
Hình 134: Giao diện trang danh sách các đơn hàng .....................................286 
Hình 135: Giao diện trang chi tiết một đơn đặt hàng ...................................286 
Hình 136: Giao diện trang chi tiết một đơn hàng đã duyệt...........................287 
Hình 137: Sơ đồ lớp của chức năng Quản lý Đơn hàng ...............................294 
Hình 138: Sơ đồ Collaboration của chức năng Quản lý Đơn hàng ..............295 

Hình 139: Giao diện các trang mua hàng .....................................................300 

VI
 


DANH MỤC CÁC BẢNG

Trang

Bảng 1: Bảng User ........................................................................................124 
Bảng 2: Bảng Category .................................................................................164 
Bảng 3: Bảng Product ...................................................................................165 
Bảng 4: Bảng ProductImage .........................................................................166 
Bảng 5: Bảng Invoice....................................................................................285 
Bảng 6: Bảng OrderDetail ............................................................................297 
Bảng 7: Bảng OrderTable .............................................................................297 
Bảng 8: Bảng Invoice....................................................................................298 

VII
 


TÓM TẮT
Luận văn: “Xây dựng website HOCWEB.VN hướng dẫn học thiết kế và triển
khai ứng dụng web trên nên tảng mã nguồn mở Java”.
Mục tiêu của đề tài là xây dựng website hướng dẫn học thiết kế web dựa trên
nền tảng ngôn ngữ Java. Thông qua website này người dùng sẽ tìm được thông tin
về các công nghệ thiết kế web như HTML, CSS, Javascript… ngoài ra người học sẽ
được hướng dẫn xây dựng một ứng dụng web hoàn chỉnh từng bước bằng một bộ bài

học từ đầu đến cuối.
Với mục tiêu giúp cho những người học có cái nhìn rõ ràng đầu tiên về thiết
kế web, chúng tôi lựa chọn ngôn ngữ JSP/Servlet để xây dựng một bộ bài học giúp
người dùng có thể nắm bắt từ những kiến thức căn bản cho đến nâng cao và hoàn
chỉnh một ứng dụng web.

VIII
 


MỤC LỤC

Trang

DANH SÁCH CHỮ VIẾT TẮT .................................................................... I 
DANH MỤC CÁC HÌNH ............................................................................. II 
DANH MỤC CÁC BẢNG ..........................................................................VII 
TÓM TẮT .................................................................................................. VIII 
CHƯƠNG 1: TổNG QUAN ...........................................................................1 
1.1. 

LÝ DO CHọN Đề TÀI .................................................................................... 1 

1.2. 

MụC ĐÍCH Đề TÀI ........................................................................................ 2 

1.3. 

ĐốI TƯợNG, PHạM VI NGHIÊN CứU ............................................................... 2 


1.4. 

QUÁ TRÌNH NGHIÊN CứU ............................................................................ 2 

1.5. 

KếT QUả, MụC TIÊU CầN ĐạT ĐƯợC .............................................................. 3 

CHƯƠNG 2: KHẢO SÁT HIỆN TRẠNG ...................................................4 
2.1. 

TÌNH HÌNH NGHIÊN CứU NƯớC NGOÀI ......................................................... 4 

2.1.1. 

Một số website hướng dẫn học web ở nước ngoài ............................... 4 

2.1.1.1.  Website www.w3schools.com ....................................................... 4 
2.1.1.1.1.  Các công nghệ hướng dẫn....................................................... 4 
2.1.1.1.2.  Cách trình bày nội dung .......................................................... 5 
2.1.1.2.  Website www.javapassion.com ..................................................... 6 
2.1.1.2.1.  Các công nghệ hướng dẫn....................................................... 6 
2.1.1.2.2.  Cách trình bày nội dung .......................................................... 7 
2.1.1.3.  Các website hướng dẫn học web của nhà sản xuất ........................ 7 
2.1.1.4.  Các diễn đàn ................................................................................... 8 
2.1.2. 

Ưu điểm................................................................................................ 8 


2.1.3. 

Hạn chế ................................................................................................ 8 

2.2. 

TÌNH HÌNH NGHIÊN CứU TRONG NƯớC. ....................................................... 9 

2.2.1. 

Một số website hướng dẫn học web trong nước .................................. 9 

2.2.2. 

Ưu điểm................................................................................................ 9 

2.2.3. 

Hạn chế ................................................................................................ 9 

2.2.4. 

Kết luận và giải pháp ........................................................................... 9 
IX

 


CHƯƠNG 3: XÂY DỰNG WEBSITE HOCWEB.VN .............................11 
3.1. 


PHÁT BIểU BÀI TOÁN ................................................................................ 11 

3.2. 

YÊU CầU Hệ THốNG ................................................................................... 13 

3.2.1. 

Yêu cầu phần cứng ............................................................................. 13 

3.2.2. 

Yêu cầu phần mềm ............................................................................. 13 

3.3. 

YÊU CầU CHứC NĂNG ............................................................................... 14 

3.3.1. 

Đối với Người dùng Khách ................................................................ 14 

3.3.1.1.  Đăng nhập .................................................................................... 14 
3.3.1.2.  Đăng ký ........................................................................................ 14 
3.3.1.3.  Quên mật khẩu ............................................................................. 14 
3.3.1.4.  Xem Công cụ tiện ích ................................................................... 14 
3.3.1.5.  Tìm kiếm và xem Tài liệu hữu ích của Bài học ........................... 14 
3.3.1.6.  Vào Diễn đàn ............................................................................... 14 
3.3.1.7.  Xem Liên kết hữu ích khác .......................................................... 15 

3.3.1.8.  Xem Bài học và Xem Ứng dụng .................................................. 15 
3.3.2. 

Đối với Nguời dùng Thành viên ........................................................ 15 

3.3.2.1.  Đăng xuất ..................................................................................... 15 
3.3.2.2.  Chỉnh sửa thông tin Tài khoản ..................................................... 15 
3.3.2.3.  Đặt câu hỏi ................................................................................... 15 
3.3.2.4.  Tìm kiếm câu hỏi đã đặt ở Bài học hoặc Ứng dụng..................... 16 
3.3.2.5.  Tải Công cụ hữu ích ..................................................................... 16 
3.3.2.6.  Tải Mã nguồn ............................................................................... 16 
3.3.2.7.  Tải Tài liệu ................................................................................... 16 
3.3.2.8.  Tùy chỉnh Ví dụ trực tuyến .......................................................... 16 
3.3.3. 

Đối với Nguời dùng Nguời quản trị ................................................... 16 

3.3.3.1.  Quản lý Nguời dùng ..................................................................... 16 
3.3.3.2.  Quản lý Tài liệu ............................................................................ 16 
3.3.3.3.  Quản lý Công cụ .......................................................................... 16 
3.3.3.4.  Quản lý Câu hỏi ........................................................................... 17 
3.3.3.5.  Quản lý Mã tải về ......................................................................... 17 
3.3.3.6.  Quản lý Mã nguồn........................................................................ 17 
3.3.3.7.  Quản lý Bài học và Ứng dụng ...................................................... 17 
3.4. 
 

KIẾN TRÚC WEBSITE HOCWEB.VN ....................................................... 18 
X



3.4.1. 

Sơ đồ kiến trúc hệ thống .................................................................... 18 

3.4.2. 

Sơ đồ kiến trúc phần mềm ................................................................. 18 

3.5. 

SƠ Đồ USECASE VÀ SƠ Đồ ACTIVITY ........................................................ 19 

3.5.1. 

Sơ đồ Usecase cho nguời dùng Khách ............................................... 20 

3.5.1.1.  Đăng nhập .................................................................................... 20 
3.5.1.2.  Đăng ký ........................................................................................ 21 
3.5.1.3.  Quên mật khẩu ............................................................................. 23 
3.5.1.4.  Xem Công cụ ............................................................................... 24 
3.5.1.5.  Tìm kiếm Tài liệu ......................................................................... 25 
3.5.1.6.  Vào Diễn đàn ............................................................................... 26 
3.5.1.7.  Xem Liên kết ................................................................................ 27 
3.5.1.8.  Xem Bài học và Ứng dụng ........................................................... 28 
3.5.2. 

Sơ đồ Usecase cho người dùng Thành viên ....................................... 30 

3.5.2.1.  Đăng xuất ..................................................................................... 30 

3.5.2.2.  Chỉnh sửa thông tin tài khoản ...................................................... 31 
3.5.2.3.  Tìm kiếm câu hỏi đã đặt ............................................................... 32 
3.5.2.4.  Tải Công cụ .................................................................................. 33 
3.5.2.5.  Tải Mã nguồn ............................................................................... 34 
3.5.2.6.  Đặt câu hỏi ................................................................................... 35 
3.5.2.7.  Tải Tài liệu ................................................................................... 36 
3.5.3. 

Sơ đồ Usecase cho nguời dùng Nguời quản trị .................................. 38 

3.5.3.1.  Quản lý Nguời dùng ..................................................................... 38 
3.5.3.1.1.  Xóa Nguời dùng.................................................................... 39 
3.5.3.1.2.  Chỉnh sửa thông tin Nguời dùng ........................................... 40 
3.5.3.1.3.  Tìm kiếm Nguời dùng........................................................... 41 
3.5.3.2.  Quản lý Tài liệu ............................................................................ 42 
3.5.3.2.1.  Thêm Tài liệu mới ................................................................ 42 
3.5.3.2.2.  Cập nhật Tài liệu ................................................................... 43 
3.5.3.3.  Quản lý Công cụ .......................................................................... 45 
3.5.3.3.1.  Thêm Công cụ mới ............................................................... 45 
3.5.3.3.2.  Cập nhật Công cụ.................................................................. 46 
3.5.3.3.3.  Tìm kiếm Công cụ ................................................................ 47 
3.5.3.4.  Quản lý Câu hỏi ........................................................................... 48 
XI
 


3.5.3.4.1.  Trả lời Câu hỏi mới nhanh .................................................... 48 
3.5.3.4.2.  Trả lời Câu hỏi theo Bài học hoặc Ứng dụng ....................... 49 
3.5.3.5.  Quản lý Mã tải về ......................................................................... 51 
3.5.3.5.1.  Thêm Mã tải về mới.............................................................. 51 

3.5.3.5.2.  Cập nhật Mã tải về ................................................................ 52 
3.5.3.6.  Quản lý Mã nguồn........................................................................ 53 
3.5.3.6.1.  Thêm Mã nguồn mới ............................................................ 53 
3.5.3.6.2.  Cập nhật Mã nguồn ............................................................... 54 
3.5.3.6.3.  Tìm kiếm Mã nguồn ............................................................. 55 
3.5.3.7.  Quản lý Bài học và Ứng dụng ...................................................... 57 
3.5.3.7.1.  Thêm Bài học mới ................................................................ 57 
3.5.3.7.2.  Cập nhật Bài học ................................................................... 59 
3.5.3.7.3.  Xóa Bài học .......................................................................... 60 
3.5.3.7.4.  Thêm Công cụ liên quan ....................................................... 61 
3.5.3.7.5.  Thêm Ứng dụng liên quan .................................................... 62 
3.5.3.7.6.  Thêm Bài học liên quan ........................................................ 63 
3.5.3.7.7.  Thêm Ứng dụng mới............................................................. 64 
3.5.3.7.8.  Cập nhật Ứng dụng ............................................................... 65 
3.5.3.7.9.  Xóa Ứng dụng....................................................................... 66 
3.5.3.7.10.  Thêm Mã nguồn liên quan .................................................. 67 
3.5.3.7.11.  Quản lý Nội dung................................................................ 68 
3.5.3.7.11.1.  Thêm Danh mục mới ....................................................... 69 
3.5.3.7.11.2.  Xóa Danh mục ................................................................. 70 
3.5.3.7.11.3.  Cập nhật Danh mục ......................................................... 71 
3.5.3.7.11.4.  Quản lý Trang .................................................................. 73 
3.5.3.7.11.4.1.  Thêm Trang mới ....................................................... 73 
3.5.3.7.11.4.2.  Xóa Trang ................................................................. 75 
3.5.3.7.11.4.3.  Cập nhật Trang ......................................................... 76 
3.5.3.7.11.4.4.  Quản lý Bài viết ........................................................ 77 
3.5.3.7.11.4.4.1.  Thêm Bài viết mới ............................................ 77 
3.5.3.7.11.4.4.2.  Xóa Bài viết ...................................................... 78 
3.5.3.7.11.4.4.3.  Cập nhật Bài viết ............................................... 79 
3.5.3.7.11.4.4.4.  Quản lý Ví dụ .................................................... 81 
XII

 


3.5.3.7.11.4.4.4.1.  Thêm Ví dụ mới ......................................... 81 
3.5.3.7.11.4.4.4.2.  Xóa Ví dụ ................................................... 82 
3.5.3.7.11.4.4.4.3.  Cập nhật Ví dụ ........................................... 83 
3.6. 

SƠ Đồ LớP ................................................................................................ 85 

3.6.1. 

Gói Entity ........................................................................................... 85 

3.6.2. 

Gói DAO ............................................................................................ 86 

3.6.2.1.  Gói DAO Interface ....................................................................... 86 
3.6.2.2.  Gói DAO Implement .................................................................... 87 
3.7. 

SƠ Đồ CƠ Sở Dữ LIệU................................................................................. 90 

CHƯƠNG 4: XÂY DựNG Bộ BÀI HọC THIẾT KẾ VÀ TRIỂN KHAI
MỘT ỨNG DỤNG WEB .........................................................................................98 
4.1. 

MỤC ĐÍCH................................................................................................ 98 


4.2. 

PHÁT BIểU BÀI TOÁN ................................................................................ 98 

4.3. 

YÊU CầU CHứC NĂNG ............................................................................... 98 

4.4. 

SƠ Đồ THIếT Kế ......................................................................................... 99 

4.4.1. 

Sơ đồ các trang quản trị...................................................................... 99 

4.4.2. 

Sơ đồ lớp ............................................................................................ 99 

4.4.2.1.  Gói Entity ................................................................................... 100 
4.4.2.2.  Gói DAO .................................................................................... 101 
4.4.3. 
4.5. 

Sơ đồ quan hệ cơ sở dữ liệu ............................................................. 101 

Bộ BÀI HọC SHOPPING ONLINE ............................................................... 102 

4.5.1. 


Bài học 1: Xây dựng chức năng Đăng ký Tài khoản ....................... 102 

4.5.1.1.  Khái quát .................................................................................... 102 
4.5.1.2.  Sơ đồ Collaboration ................................................................... 102 
4.5.1.3.  Sơ đồ lớp .................................................................................... 103 
4.5.1.4.  Thao tác với CSDL .................................................................... 103 
4.5.1.5.  Mô tả mã nguồn ......................................................................... 104 
4.5.2. 

Bài học 2: Xây dựng Chức năng quản lý Người dùng ..................... 123 

4.5.2.1.  Thao tác với CSDL .................................................................... 124 
4.5.2.2.  Chức năng sửa thông tin người dùng ......................................... 124 
4.5.2.2.1.  Sơ đồ Collaboration ............................................................ 124 
4.5.2.2.2.  Sơ đồ lớp ............................................................................. 125 
XIII
 


4.5.2.2.3.  Mô tả mã nguồn .................................................................. 126 
4.5.2.3.  Chức năng xóa người dùng ........................................................ 136 
4.5.2.3.1.  Sơ đồ Collaboration ............................................................ 136 
4.5.2.3.2.  Sơ đồ lớp ............................................................................. 137 
4.5.2.3.3.  Mô tả mã nguồn .................................................................. 137 
4.5.2.4.  Chức năng tìm người dùng......................................................... 139 
4.5.2.4.1.  Sơ đồ Collaboration ............................................................ 139 
4.5.2.4.2.  Sơ đồ lớp ............................................................................. 140 
4.5.2.4.3.  Mô tả mã nguồn .................................................................. 141 
4.5.3. 


Bài học 3: Xây dựng chức năng đăng nhập – đăng xuất .................. 144 

4.5.3.1.  Khái quát .................................................................................... 144 
4.5.3.2.  Sơ đồ Collaboration ................................................................... 144 
4.5.3.3.  Sơ đồ lớp .................................................................................... 145 
4.5.3.4.  Thao tác với CSDL .................................................................... 145 
4.5.3.5.  Mô tả mã nguồn ......................................................................... 145 
4.5.4. 

Bài học 4: Xây dựng chức năng quản lý thể loại ............................. 151 

4.5.4.1.  Sơ đồ Activity ............................................................................ 151 
4.5.4.2.  Sơ đồ lớp tổng quát .................................................................... 151 
4.5.4.3.  Mô hình cấu trúc thư mục .......................................................... 152 
4.5.4.4.  Sơ đồ các trang giao diện ........................................................... 153 
4.5.4.4.1.  Đăng nhập ........................................................................... 153 
4.5.4.4.2.  Trang quản lý thể loại ......................................................... 154 
4.5.4.4.3.  Trang thêm thể loại ............................................................. 154 
4.5.4.4.4.  Trang chỉnh sửa thể loại...................................................... 155 
4.5.4.4.5.  Xóa thể loại ......................................................................... 156 
4.5.4.4.6.  Trang xem danh sách sản phẩm cùng thể loại .................... 157 
4.5.4.4.7.  Trang thêm sản phẩm.......................................................... 158 
4.5.4.4.8.  Trang xem thông tin và chỉnh sửa sản phẩm ...................... 159 
4.5.4.4.9.  Xóa sản phẩm ..................................................................... 160 
4.5.4.4.10.  Xem danh sách hình ảnh của một sản phẩm ..................... 160 
4.5.4.4.11.  Thêm hình ảnh cho sản phẩm ........................................... 161 
4.5.4.4.12.  Xem thông tin và chỉnh sửa hình ảnh ............................... 162 
4.5.4.5.  Thao tác với CSDL .................................................................... 164 
XIV

 


4.5.4.6.  Mô tả mã nguồn các phần chung................................................ 166 
4.5.4.6.1.  Các lớp nghiệp vụ (shop.bussiness) .................................... 166 
4.5.4.6.2.  Các lớp trong gói shop.data ................................................ 174 
4.5.4.6.2.1.  Sơ đồ lớp cho các lớp truy cập dữ liệu ............................ 175 
4.5.4.7.  Chức năng thêm thể loại ............................................................ 198 
4.5.4.7.1.  Sơ đồ Collaboration ............................................................ 198 
4.5.4.7.2.  Sơ đồ lớp ............................................................................. 199 
4.5.4.7.3.  Mô tả mã nguồn .................................................................. 199 
4.5.4.8.  Chức năng sửa thể loại ............................................................... 213 
4.5.4.8.1.  Sơ đồ Collaboration ............................................................ 213 
4.5.4.8.2.  Sơ đồ lớp ............................................................................. 215 
4.5.4.8.3.  Mô tả mã nguồn .................................................................. 215 
4.5.4.9.  Chức năng xóa thể loại ............................................................... 227 
4.5.4.9.1.1  Sơ đồ Collaboration .......................................................... 227 
4.5.4.9.1.2  Sơ đồ lớp ........................................................................... 228 
4.5.4.9.1.3  Mô tả mã nguồn ................................................................ 229 
4.5.4.10.  Chức năng xem danh sách sản phẩm ....................................... 231 
4.5.4.10.1.  Sơ đồ Collaboration .......................................................... 231 
4.5.4.10.2.  Giao diện người dùng ....................................................... 231 
4.5.4.10.3.  Mô tả mã nguồn. ............................................................... 232 
4.5.5. 

Bài học 5: Xây dựng chức năng quản lý Sản phẩm ......................... 238 

4.5.5.1.  Sơ đồ Activity ............................................................................ 238 
4.5.5.2.  Sơ đồ lớp .................................................................................... 239 
4.5.5.3.  Sơ đồ các trang giao diện ........................................................... 240 

4.5.5.4.  Thao tác với CSDL .................................................................... 240 
4.5.5.5.  Chức năng thêm sản phẩm ......................................................... 240 
4.5.5.5.1.  Sơ đồ Collaboration ............................................................ 240 
4.5.5.5.2.  Sơ đồ lớp ............................................................................. 241 
4.5.5.5.3.  Giao diện người dùng ......................................................... 242 
4.5.5.5.4.  Mô tả mã nguồn .................................................................. 245 
4.5.5.6.  Chức năng sửa sản phẩm............................................................ 255 
4.5.5.6.1.  Khái quát ............................................................................. 255 
4.5.5.6.2.  Sơ đồ Collaboration ............................................................ 255 
XV
 


4.5.5.6.3.  Sơ đồ lớp ............................................................................. 256 
4.5.5.6.4.  Giao diện người dùng ......................................................... 257 
4.5.5.6.5.  Mô tả mã nguồn .................................................................. 259 
4.5.5.7.  Chức năng xóa sản phẩm ........................................................... 272 
4.5.5.7.1.  Sơ đồ Collaboration ............................................................ 272 
4.5.5.7.2.  Sơ đồ lớp ............................................................................. 272 
4.5.5.7.3.  Giao diện người dùng ......................................................... 273 
4.5.5.7.4.  Mô tả mã nguồn .................................................................. 274 
4.5.6. 

Bài học 6: Chức năng hiển thị thể loại và sản phẩm ........................ 275 

4.5.6.1.  Sơ đồ Collaboration ................................................................... 276 
4.5.6.2.  Sơ đồ lớp. ................................................................................... 277 
4.5.6.3.  Tạo CSDL. ................................................................................. 277 
4.5.6.4.  Tạo giao diện người dùng. ......................................................... 277 
4.5.7. 


Bài học 7: Xây dựng chức năng quản lý giỏ hàng ........................... 284 

4.5.7.1.  Sơ đồ Collaboration ................................................................... 284 
4.5.7.2.  Sơ đồ lớp .................................................................................... 284 
4.5.7.3.  Thao tác với CSDL .................................................................... 285 
4.5.7.4.  Mô tả mã nguồn ......................................................................... 285 
4.5.8. 

Bài học 8: xây dựng chức năng quản lý Đơn hàng .......................... 294 

4.5.8.1.  Sơ đồ lớp .................................................................................... 294 
4.5.8.2.  Sơ đồ Collaboration ................................................................... 295 
4.5.8.3.  Thao tác với CSDL .................................................................... 297 
4.5.8.4.  Mô tả mã nguồn ......................................................................... 299 

CHƯƠNG 5: KếT QUả NGHIÊN CứU ....................................................316 
5.1. 

KếT QUả TổNG QUÁT............................................................................... 316 

5.1.1. 

Ưu điểm............................................................................................ 316 

5.1.2. 

Khuyết điểm ..................................................................................... 317 

TÀI LIệU THAM KHảO ............................................................................319 

[1] HTTP://WWW.JAVAPASSION.COM .................................................................... 319 
[2] HTTP://WWW.W3SCHOOLS.COM ...................................................................... 319 
[3] HTTP://EWEBVN.COM...................................................................................... 319 
XVI
 


[4] HEGE REFSNES, STALE REFSNES, KAI JIM REFSNES, JAN EGIL REFSNES WITH C.
MICHAEL WOODWARD, LEARN HTML AND CSS WITH W3SCHOOLS, PUBLISHED BY WILEY
PUBLISHING, INC. 111 RIVER STREET HOBOKEN, NJ 07030-5774 WWW.WILEY.COM, 2010.
........................................................................................................................................ 319 

PHụ LụC ......................................................................................................320 
PHụ LụC A: HƯớNG DẫN CÀI ĐặT ứNG DụNG HOCWEB.VN....................................... 320 
PHụ LụC B: HƯớNG DẫN Sử DụNG ứNG DụNG HOCWEB.VN ...................................... 320 
PHụ LụC D: KếT QUả KHảO SÁT Ý KIếN NGƯờI DÙNG .............................................. 320 
PHụ LụC C: CÁC BÀI HọC LIÊN QUAN ..................................................................... 320 

XVII
 


CHƯƠNG 1: TổNG QUAN
1.1. LÝ DO CHọN Đề TÀI
Ngày nay, cùng với sự phát triển nhanh chóng của lĩnh vực truyền thông,
Internet đã và đang là một công cụ cực kỳ quan trọng đối với bất kỳ doanh nghiệp,
bất kỳ lĩnh vực hay ngành nghề nào. Website trở thành nơi giới thiệu, truyền đạt
thông tin nhanh chóng và hiệu quả nhất với khách hàng về hình ảnh cũng như sản
phẩm của một doanh nghiệp. Hơn thế nữa, với sự phát triển của ngành ngân hàng,
việc thanh toán một hóa đơn hàng hóa cũng trở nên đơn giản. Từ nhu cầu thuận tiện

và tiết kiệm thời gian trong mua bán hàng hóa dẫn đến việc kinh doanh trực tuyến
trở nên phổ biến, hầu hết các doanh nghiệp đều cần có website riêng và chức năng
mua bán hàng hóa trực tuyến là cấp thiết. Nếu doanh nghiệp có một website tốt, họ
có thể tăng doanh thu, tăng năng suất làm việc của nhân viên, giảm chi phí cho việc
marketing, giảm chi phí bán hàng, mở rộng mối quan hệ… Do đó tầm quan trọng
của website đối với doanh nghiệp là rất lớn.
Để thiết kế được một website tốt, người thiết kế cần có kiến thức nhất định về
các công nghệ và kỹ thuật trong thiết kế web. Ngày càng nhiều sinh viên quan tâm
hơn và mong muốn làm việc trong lĩnh vực này. Việc học web cũng trở nên dễ dàng
hơn trước (học qua sách, cd…) thông qua internet nơi chứa nguồn thông tin khổng
lồ về mọi lĩnh vực.
Xuất phát từ nhu cầu thực tiễn, nhằm giúp đỡ cho các bạn sinh viên có thể tìm
hiểu nhanh chóng về các kỹ thuật, công nghệ và đặc biệt là thiết kế một website có
quy trình ra sao, chúng tôi xây dựng website hocweb.vn với mục đích cung cấp
thông tin về bài học giúp người dùng có thể nắm bắt từ những kiến thức căn bản cho
đến nâng cao và hoàn chỉnh một ứng dụng web.

1
 


1.2.

MụC ĐÍCH Đề TÀI
- Tìm hiểu xây dựng website HOCWEB.VN hướng dẫn học thiết kế và triển
khai một ứng dụng web.
- Giới thiệu, hướng dẫn và so sánh một số công nghệ web hiện nay trên nền
tảng mã nguồn mở Java.

1.3.


ĐốI TƯợNG, PHạM VI NGHIÊN CứU
- Tìm hiểu các ngôn ngữ thiết kế web: HTML, CSS, Javascript…
- Tìm hiểu các công nghệ web trên nền tảng mã nguồn mở Java: JSP/Servlet,
framework ZK…
- Xây dựng website hướng dẫn học thiết kế và triển khai ứng dụng web vào
thực tế HOCWEB.VN.
- Xây dựng bộ bài học hướng dẫn thiết kế, hiện thực và triển khai một ứng
dụng web bằng công nghệ JSP/Servlet.

1.4.

QUÁ TRÌNH NGHIÊN CứU
Quá trình nghiên cứu được chia thành ba giai đoạn:
Giai đoạn 1: Triển khai trang web dạy học trực tuyến HOCWEB.VN.
+ Khảo sát các trang web của tổ chức và cá nhân, các trang blog, các diễn đàn

dạy học, làm web đưa ra ưu nhược điểm.
+ Từ đó đưa ra những yêu cầu chức năng và phi chức năng cần thiết cho một
trang web hướng dẫn học trực tuyến.
+ Dựa trên các yêu cầu phân tích được, tiến hành phân tích usecase và thiết kế
giao diện.
+ Phân tích và thiết kế kiến trúc hệ thống và kiến trúc phần mềm của trang web
hướng dẫn học trực tuyến HOCWEB.VN.
+ Tìm hiểu framework lập trình web ZK dựa trên ngôn ngữ Java và các ngôn
ngữ thiết kế web: HTML, CSS, JavaScript… để hiện thực trang hướng dẫn học trực
tuyến HOCWEB.VN.
+ Triển khai hệ thống và kiểm tra lỗi.
+ Viết hướng dẫn sử dụng website.
2

 


×