ĐẠI HỌC HUẾ TRƯỜNG ĐẠI HỌC KINH TẾ KHOA HỆ THỐNG THÔNG TIN KINH TẾ ------KHOÁ LUẬN TỐT NGHIỆP THIẾT KẾ VÀ XÂY DỰNG WEBSITE QUẢNG BÁ CỬA HÀNG ÁO CƯỚI TIÊN WEDDING Sinh viên thực hiện:
Trang 1ĐẠI HỌC HUẾ TRƯỜNG ĐẠI HỌC KINH TẾ KHOA HỆ THỐNG THÔNG TIN KINH TẾ
- -KHOÁ LUẬN TỐT NGHIỆP THIẾT KẾ VÀ XÂY DỰNG WEBSITE QUẢNG
BÁ CỬA HÀNG ÁO CƯỚI TIÊN WEDDING
Sinh viên thực hiện: Lê Thị Phương Lớp: K50B Tin học kinh tế
Mã sinh viên: 16K408102
Huế, 12/2019
Trường Đại học Kinh tế Huế
Trang 2ĐẠI HỌC HUẾ TRƯỜNG ĐẠI HỌC KINH TẾ KHOA HỆ THỐNG THÔNG TIN KINH TẾ
- -KHOÁ LUẬN TỐT NGHIỆP THIẾT KẾ VÀ XÂY DỰNG WEBSITE QUẢNG
BÁ CỬA HÀNG ÁO CƯỚI TIÊN WEDDING
Sinh viên thực hiện: Lê Thị Phương Giáo viên hướng dẫn:
Mã sinh viên: 16K408102
Huế, 12/2019
Trường Đại học Kinh tế Huế
Trang 3LỜI CẢM ƠN
Em xin chân thành cảm ơn thầy giáo Nguyễn Thanh Tuấn, giảng viên khoa Hệ
thống thông tin kinh tế đã giúp đỡ, hướng dẫn tận tình trong suốt qua trình thực hiện
khoá luận tốt nghiệp
Em xin cảm ơn Trung tâm công nghệ thông tin tỉnh Thừa Thiên Huế đã hỗ trợ,
tạo điều kiện thuận lợi để em có thể thực tập tại công ty Cảm ơn các anh chị trong
công ty đã nhiệt tình hướng dẫn, truyền đạt những kinh nghiệm để em hoàn thành khoá
luận tốt nghiệp
Em xin gửi lời cảm ơn quý thầy cô trường Đại học kinh tế Huế đã truyền đạt
những kỹ thuật, bài học, kinh nghiệm quý báu trong việc xây dựng đề tài và áp dụng
kiến thức vào thực tế tương lai sau này
Cuối cùng em xin cảm ơn gia đình đã luôn ở bên ủng hộ, động viên để em có thể
hoàn thành khoá luận tôt nhất
Trong quá trình hoàn thành khoá luận, do chưa có nhiều kinh nghiệm cũng như
thời gian thực hiện hạn hẹp chưa thể phát huy hết ý tưởng, kỹ thuật và tính năng hỗ trợ
của ngôn ngữ nên khoá luận không thể tránh khỏi những thiếu sót Kính mong nhận
được sự góp ý của quý thầy cô để em có thể hoàn thiện khoá luận tốt hơn
Em xin chân thành cảm ơn!
Huế, ngày 31 tháng 12 năm 2019
Sinh viên thực hiện
Lê Thị Phương
Trường Đại học Kinh tế Huế
Trang 4MỤC LỤC
LỜI CẢM ƠN III
MỤC LỤC IV
DANH MỤC HÌNH VẼ VII
DANH MỤC BẢNG BIỂU VIII
DANH MỤC THUẬT NGỮ IX
MỞ ĐẦU 1
1 Lý do chọn đề tài 1
2 Mục tiêu nghiên cứu 2
3 Đối tượng và phạm vi nghiên cứu 2
4 Phương pháp nghiên cứu 2
5 Các công trình liên quan 3
6 Nội dung khoá luận 4
NỘI DUNG 5
CHƯƠNG I: CƠ SỞ LÝ THUYẾT 5
1.1 HTML5 5
1.2 CSS3 5
1.3 Boostrap 5
1.4 JavaScript 6
1.5 Ngôn ngữ Java 6
1.6 Môi trường phát triển tích hơp Eclipse 6
1.7 Java Server Page 7
1.7.1 Giới thiệu về Java Sever Page 7
Trường Đại học Kinh tế Huế
Trang 51.8 Mô hình MVC (Model – View – Controller) 8
1.8.1 Khái niệm mô hình MVC 8
1.8.2 Cấu trúc mô hình 9
1.8.3 Tiến trình thực thi mô hình MVC 9
1.9 Hệ quản trị cơ sở dữ liệu Microsoft SQL Server 9
CHƯƠNG II: PHÂN TÍCH THIẾT KẾ WEBSITE CỬA HÀNG ÁO CƯỚI 11
2.1 Mô tả hệ thống 11
2.2 Yêu cầu chức năng của hệ thống 12
2.3 Biểu đồ gói 13
2.4 Biểu đồ Use-case 13
2.4.1 Xác định các Use-case 13
2.4.2 Sơ đồ Use-case tổng quát 14
2.4.3 Sơ đồ Use-case đăng nhập 15
2.4.4 Sơ đồ Use-case quản lý danh mục 16
2.4.5 Sơ đồ Use-case quản lý tin tức 18
2.4.6 Sơ đồ Use-case quản lý album ảnh 20
2.4.7 Sơ đồ Use-case quản lý lịch hẹn 22
2.4.8 Sơ đồ Use-case xem website 24
2.5 Sơ đồ hoạt động của các Use-case 25
2.5.1 Sơ đồ hoạt động Use-case “Đăng nhập” 25
2.5.2 Biểu đồ hoạt động Use-case “Quản lý danh mục” 25
2.5.3 Biểu đồ hoạt động Use-case “Quản lý tin tức” 27
2.5.4 Biểu đồ hoạt động Use-case “Quản lý album ảnh” 28
2.5.5 Biểu đồ hoạt động Use-case “Quản lý lịch hẹn” 30
2.5.6 Biểu đồ hoạt động Use-case “Xem Website” 32
Trường Đại học Kinh tế Huế
Trang 62.6 Sơ đồ lớp (Class Diagram) 33
2.6.1 Sơ đồ lớp tổng quát 33
2.6.2 Sơ đồ lớp quản lý lịch hẹn 33
2.6.3 Sơ đồ lớp quản lý tin tức 34
2.6.4 Sơ đồ lớp quản lý danh mục 34
2.6.5 Sơ đồ lớp Album ảnh 35
2.6.6 Sơ đồ lớp tài khoản 35
2.7 Sơ đồ trình tự (Sequence Diagram) 36
2.7.1 Sơ đồ trình tự đăng nhập 36
2.7.2 Sơ đồ trình tự quản lý lịch hẹn 36
2.7.3 Sơ đồ trình tự quản lý tin tức 39
2.7.4 Sơ đồ trình tự quản lý danh mục 41
2.7.5 Sơ đồ trình tự quản lý album ảnh 43
2.8 Thiết kế cơ sở dữ liệu 45
2.8.1 Lược đồ cơ sở dữ liệu 45
2.8.2 Cấu trúc các bảng và ràng buộc 45
CHƯƠNG III: XÂY DỰNG WEBSITE CỬA HÀNG ÁO CƯỚI 47
3.1 Môi trường cài đặt 47
3.2 Giao diện hệ thống 47
3.2.1 Giao diện Website 47
3.2.2 Giao diện trang quản trị 51
KẾT LUẬN 55
1 Kết quả đạt được 55
2 Hướng phát triển của đề tài 55
TÀI LIỆU THAM KHẢO 55
Trường Đại học Kinh tế Huế
Trang 7DANH MỤC HÌNH VẼ
Hình 2.1: Sơ đồ Use-case tổng quát 14
Hình 2.2: Sơ đồ Use-case đăng nhập 15
Hình 2.3: Sơ đồ Use-case quản lý danh mục 16
Hình 2.4: Sơ đồ Use-case quản lý tin tức 18
Hình 2.5: Sơ đồ Use-case quản lý album ảnh 20
Hình 2.6: Sơ đồ Use-case quản lý lịch hẹn 22
Hình 2.7: Sơ đồ Use-case xem website 24
Hình 2.8: Sơ đồ hoạt động Use-case Đăng nhập 25
Hình 2.9: Sơ đồ hoạt động Use-case Thêm danh mục 25
Hình 2.10: Sơ đồ hoạt động Use-case Sửa danh mục 26
Hình 2.11: Sơ đồ hoạt động Use-case xoá danh mục 26
Hình 2.12: Sơ đồ hoạt động Use-case thêm tin tức 27
Hình 2.13: Sơ đồ hoạt động Use-case sửa danh mục 27
Hình 2.14: Sơ đồ hoạt động Use-case xoá tin tức 28
Hình 2.15: Sơ đồ hoạt động Use-case thêm album ảnh 28
Hình 2.16: Sơ đồ hoạt động Use-case sửa album ảnh 29
Hình 2.17: Sơ đồ hoạt động Use-case xoá album ảnh 29
Hình 2.18: Sơ đồ hoạt động Use-case phản hồi khách hàng 30
Hình 2.19: Sơ đồ hoạt động Use-case cập nhật lịch hẹn 30
Hình 2.20: Sơ đồ hoạt động Use-case sửa lịch hẹn 31
Hình 2.21: Sơ đồ hoạt động Use-case xoá lịch hẹn 31
Hình 2.22: Sơ đồ hoạt động Use-case xem website 32
Hình 2.23: Sơ đồ hoạt động Use-case đặt lịch hẹn 32
Trường Đại học Kinh tế Huế
Trang 8DANH MỤC BẢNG BIỂU
Bảng 2.1: Đặc tả Use-case đăng nhập 15
Bảng 2.2: Đặc tả Use-case quản lý danh mục 16
Bảng 2.3: Đặc tả Use-case quản lý tin tức 18
Bảng 2.4: Đặc tả Use-case quản lý album ảnh 20
Bảng 2.5: Đặc tả Use-case quản lý lịch hẹn 22
Bảng 2.6: Đặc tả Use-case xem website 24
Trường Đại học Kinh tế Huế
Trang 9DANH MỤC THUẬT NGỮ
Trường Đại học Kinh tế Huế
Trang 10Trường Đại học Kinh tế Huế
Trang 11MỞ ĐẦU
1 Lý do chọn đề tài
Đời sống xã hội ngày càng phát triển đi đôi với nhu cầu của con người ngày càng
cao đặc biệt là nhu cầu về internet Theo báo cáo từ We are Social có 64 triệu người
Việt Nam sử dụng Internet tăng đến 28% so với năm 2017, trung bình 6 giờ 42 phút
mỗi ngày người dùng sẽ tham gia các hoạt động liên quan đến Internet Báo cáo cũng
đề cập thêm 94% là tỷ lệ người dùng Internet ở Việt Nam sử dụng Internet hàng
ngàyvà 6% là số người sử dụng Internet ít nhất một lần trong tuần Nhìn vào số liệu
thống kê ta có thể thấy, người dùng ở Việt Nam không tách rời các hoạt động liên
quan đến Internet hơn một tuần Với việc con người ngày càng phụ thuộc vào internet
trong cuộc sống hàng ngày nên nó chính là kênh truyền thông hiệu quả đến với tất cả
người dùng Cùng với sự phát triển mạnh mẽ của internet các cửa hàng cũng tiến hành
áp dụng công nghệ vào việc kinh doanh của mình thông qua website của cửa hàng Từ
website của mình, cửa hàng có thể quảng bá sản phẩm, thương hiệu của mình đến gần
hơn với khách hàng giúp đẩy mạnh hoạt động kinh doanh, thu hút thêm nhiều khách
hàng tiềm năng, nâng tầm uy tín và khẳng định giá trị của cửa hàng trong lòng khách
hàng
Ngày cưới là ngày trọng đại trong cuộc đời của mỗi người và cũng là ngày đẹp
nhất của người con gái khi khoác lên mình chiếc váy cưới lộng lẫy, sang trọng Với
mong muốn cung cấp thêm nhiều thông tin về việc chọn áo cưới, xu hướng trang điểm,
những gợi ý về chụp ảnh cưới cho khách hàng cùng với sự đầu tư để đẩy mạnh hoạt
động kinh doanh, quảng bá dịch vụ của mình đến gần hơn với khách hàng thì việc xây
dựng một website làm công cụ truyền thông là rất cần thiết và hiệu quả Trên cở sở đó,
tôi quyết định chọn đề tài “THIẾT KẾ VÀ XÂY DỰNG WEBSITE QUẢNG BÁ
C ỬA HÀNG ÁO CƯỚI TIÊN WEDDING” cho khoá luận của mình.
Trường Đại học Kinh tế Huế
Trang 122 Mục tiêu nghiên cứu
Mục tiêu tổng quát:
Xuất phát từ việc nghiên cứu cơ sở lý thuyết và yêu cầu thực tế quảng bá hình
ảnh của cửa hàng đến gần hơn với khách hàng giúp cho khách hàng hiểu hơn
những dịch vụ của cửa hàng khoá luận tập trung phân tích, thiết kế và xây dựng
website quảng bá cửa hàng áo cưới Tiên Wedding
Mục tiêu cụ thể:
- Tìm hiểu cơ sở lý thuyết về thiết kế, xây dựng và quản lý website quảng bá
thương hiệu cho cửa hàng vừa và nhỏ
- Nghiên cứu và nắm vững quy trình xây dựng một website hoàn chỉnh và các
hoạt động của nó
- Nghiên cứu phương pháp xây dựng, phát triển hệ thống thông tin quản lý
- Tìm hiểu các công cụ hỗ trợ thiết kế, xây dựng website quảng bá thương
hiệu
- Triển khai thiết kế và xây dựng website đầy đủ các chức năng cơ bản
- Chạy thử, kiểm tra và sửa lỗi còn tồn đọng để hoàn thiện website
3 Đối tượng và phạm vi nghiên cứu
Đối tượng
- Lý thuyết về thiết kế, xây dựng và quản lý website cho cửa hàng áo cưới
- Quy trình hoạt động của cửa hàng áo cưới
- Phương pháp xây dựng hệ thống thông tin
- Ngôn ngữ: Java, HTML5, CSS3, JavaScrip
Phạm vi nghiên cứu
- Về không gian: cửa hàng áo cưới Tiên Wedding, 100 Thái Thị Bôi, Quận
Thanh Khê, Thành phố Đà Nẵng
- Về thời gian thực hiện: từ ngày 15/9/2019 đến ngày 22/12/2019
4 Phương pháp nghiên cứu
Phương pháp nghiên cứu tài liệu: thu thập và nghiên cứu các tài liệu về cửa
hàng áo cưới, các website quảng bá thương hiệu để có thêm được kiến thức
chuyên sâu từ đó làm rõ hơn đề tài của mình
Trường Đại học Kinh tế Huế
Trang 13 Phương pháp quan sát, đánh giá: quan sát cách hoạt động của cửa hàng, các quy
trình nghiệp vụ để áp dụng những kiến thức và công nghệ phù hợp
Phương pháp phân tích và thiết kế hệ thống: tổng hợp, phân loại các thông tin
đã thu thập được để tiến hành quá trình phân tích và thiết kế cơ sở dữ liệu
Phương pháp lập trình hướng đối tượng: sử dụng ngôn ngữ lập trình Java với hệ
quản trị CSDL Microsoft SQL Server để xây dựng và quản lý website
5 Các công trình liên quan
Công nghệ thông tin đang phát triển hết sức mạnh mẽ, viêc sử dụng website để bá
thương hiệu, giới thiệu sản phẩm tới người dùng trở nên phổ biến và cần thiết Nắm
bắt được lợi ích to lớn mà website mang lại và yêu cầu sở hữu website riêng của mỗi
doanh nghiệp, nhiều dự án đươc thực hiện để đáp ứng yêu cầu này
- Khoá luận của Nguyễn Thị Thu Phong K47 Tin học kinh tế với đề tài “XÂY
DỰNG WEBSITE ĐẶT CƠM ONLINE” sử dụng ngôn ngữ java và
Frameword Struts cho các quầy căng tin để phục vụ cho các nhân viên của công
ty FPT Qua đề tài này, tác giả mong muốn xây dựng một website bán hàng
dành riêng cho công ty, cho phép người quản trị kiểm soát và điều khiển hoạt
động kinh doanh một cách hiệu quả
- Khoá luận của Nguyễn Nhật Quang K46 Tin học kinh tế với đề tài “Xây dựng
website thương mại điện tử cho công ty trách nhiệm hữu hạn Toàn Thủy dựa
trên phần mềm quản trị nội dung WordPress” nhằm đưa ra những giải pháp cần
thiết để giúp công ty phát triển và mở rộng lĩnh vực kinh doanh
- Tiểu luận của các học viên Hoàng Minh, Lê Viết Chinh, Nguyễn Mạnh Cường,
Lương Việt Tiến, Nguyễn Khánh Hưng và sự hướng dẫn của Tiến sĩ Hoàng
Hữu Hạnh với đề tài “Phân tích thiết kế hệ thống bán hàng qua mạng” Đề tài
nhằm xây dựng một hệ thống mua bán và bảo hành thiết bị máy tính cung cấp
cho khách hàng và nhà quản lý những chức năng cần thiết để thực hiên giao
dịch, quản lý sự hoạt động của cửa hàng
- Báo cáo thực tập tốt nghiệp của Nguyễn Duy Tân và giáo viên hướng dẫn Trần
Vĩnh Xuyên với đề tài “Nghiên cứu và xây dựng web tin tức bằng Joomla”
Trường Đại học Kinh tế Huế
Trang 14nhằm quảng bá thương hiệu của trung tâm đào tạo quản trị mạng và an ninh
mạng quốc tế ATHENA đến các học viên
6 Nội dung khoá luận
Ngoài Mở đầu và Kết luận, Khóa luận gồm 3 chương :
CHƯƠNG I: CƠ SỞ LÝ THUYẾT
Chương này trình bày cơ sở lý thuyết về phương pháp xây dựng hệ thống thông
tin, các ngôn ngữ lập trình, công cụ sử dụng để xây dựng website
CHƯƠNG II: PHÂN TÍCH THIẾT KẾ WEBSITE CỬA HÀNG ÁO CƯỚI
Chương này mô tả bài toán và các yêu cầu chức năng của hệ thống qua đó đi sâu
vào phân tích hệ thống, mô hình hoá các chức năng và thiết kế cơ sở dữ liệu cho hệ
thống
CHƯƠNG III: XÂY DỰNG WEBSITE CỬA HÀNG ÁO CƯỚI
Chương này trình bày các công cụ xây dựng website, thiết kế giao diện cho hệ
thống và kết quả kiểm thử
Trường Đại học Kinh tế Huế
Trang 15NỘI DUNG CHƯƠNG I: CƠ SỞ LÝ THUYẾT1.1 HTML5
HTML viết tắt của HyperText Markup Language là ngôn ngữ đánh dấu siêu văn
bản được thiết kế để tạo nên một trang web HTML5 là phiên bản thứ 5 của HTML
xuất hiện vào tháng 12 năm 2012 được phát triển để tăng tính tương thích, chuẩn hoá
các đánh dấu có sẵn cho tài liệu, đưa ra các đánh dấu mới và giới thiệu giao diện lập
trình ứng dụng để toạ ra các ứng dụng web phức tạp
1.2 CSS3
CSS3 là phiên bản mới nhất của CSS viết tắt của Cascading Style Sheets - ngôn
ngữ được sử dụng để định dạng các phần tử được hiển thị tạo nên phong cách cho
website
CSS3 mang đến các bộ chọn và thuộc tính mới với các tính năng được mở rộng
cho phép thiết kế trang web trở nên linh hoạt hơn với bố cục và cách trình bày CSS3
được đánh giá cao khi có thể tương thích với các kích thước màn hình và hoạt động
trên hầu hết các trình duyệt khác nhau nhưng vẫn khá nhất quán
1.3 Boostrap
Bootstrap là một mã nguồn mở chứa các ngôn ngữ lập trình như HTML, CSS,
JavaScript giúp cho việc thiết kế website trở nên dễ dàng, nhanh chóng hơn
Bootstrap ngày càng phổ biến vì đã được bổ sung thêm tính năng Customize (Tùy
chỉnh) Với tính năng này giúp cho người sử dụng có thể linh hoạt hơn trong việc lựa
chọn những thuộc tính, phần tử phù hợp mà không cần phải tải toàn bộ mã nguồn về
máy
Với xu thế thiết kế website hiện nay, bootstrap đã đáp ứng được việc phát triển
giao diện website tương thích với nhiều thiết bị khác nhau đáp ứng yêu cầu cực kì
quan trọng trong trải nghiệm người dùng
Trường Đại học Kinh tế Huế
Trang 161.4 JavaScript
Javascript là một ngôn ngữ thông dịch, chương trình nguồn của nó được nhúng
hoặc tích hợp vào tập tin HTML chuẩn Khi file được load trong browser, browser sẽ
thông dịch cho các script và thực hiện các công việc xác định
Chương trình nguồn Javascript được thông dịch trong trang HTML sau khi toàn bộ
trang được load nhưng trước khi trang được hiển thị
1.5 Ngôn ngữ Java
Java là một ngôn ngữ lập trình hướng đối tượng dựa trên các lớp Khác với phần
lớn ngôn ngữ lập trình thông thường, thay vì biên dịch mã nguồn thành mã máy hoặc
thông dịch mã nguồn khi chạy, Java được thiết kế để biên dịch mã nguồn thành
bytecode, bytecode sau đó sẽ được môi trường thực thi chạy
Những đặc điểm của ngôn ngữ lập trình Java:
- Là ngôn ngữ hoàn toàn hướng đối tượng
- Là ngôn ngữ đa nền cho phép một chương trình có thể thực thi trên các hệ điều
hành khác nhau (MS Windows, UNIX, Linux) mà không phải biên dịch lại
chương trình
- Là ngôn ngữ đa luồng
- Là ngôn ngữ đơn giản, dễ học, kiến trúc chương trình đơn giản
- Là ngôn ngữ an toàn, có tính bảo mật cao
- Java hỗ trợ phát triển nhiều loại hình ứng dụng khác nhau chẳng hạn như J2SE
(Java 2 Standard Edition) dành cho phát triển ứng dụng clientserver, J2ME
(Java 2 Micro Edition) dành cho phát triển ứng dụng trên thiết bị di động, J2EE
(Java 2 Enterprise Edition) dành cho phát triển ứng dụng thương mại
1.6 Môi trường phát triển tích hơp Eclipse
Eclipse là một môi trường phát triển tích hợp cho ngôn ngữ lập trình Java, được
phát triển ban đầu bởi IBM, và hiện nay bởi tổ chức Eclipse Ngoài Java, Eclipse còn
hỗ trợ nhiều ngôn ngữ lập trình khác như C#, C, C++, PHP, Python, XML, HTML,
JavaScript khi sử dụng thêm trình bổ sung (plug-in)
Trường Đại học Kinh tế Huế
Trang 17Các tính năng của Eclipse hấp dẫn các nhà phát triển nói chung và các nhà phát
triển Java nói riêng gồm có :
- Có sẵn các trình soạn thảo thông minh để viết Java, HTML, XML…
- Làm nổi bật toàn bộ cú pháp trên tất cả trình soạn thảo
- Kiểm tra toàn bộ cú pháp khi bạn nhập mã lệnh của bạn vào
- Trợ giúp viết mã phân biệt theo ngữ cảnh đối với các ngôn ngữ lập trình được
hỗ trợ, bao gồm cả tra cứu động tài liệu hướng dẫn API
- Hỗ trợ phát triển các ứng dụng Java chuẩn, cũng như các ứng dụng đích Java
EE, như các ứng dụng Web và các dịch vụ Web
- Tích hợp chặt chẽ với các công cụ xây dựng Java phổ biến, như Apache và Ant
Apache Maven
- Có khả năng kiểm soát, quản lý, và triển khai các ứng dụng tới các máy chủ
ngay trong chu kỳ thời gian thử nghiệm và gỡ lỗi
- Tích hợp chặt chẽ với các nguồn dữ liệu quan hệ và không quan hệ thông qua
JDBC và Open Data Access (ODA)
1.7 Java Server Page
1.7.1 Giới thiệu về Java Sever Page
- JSP là công nghệ script chạy phía web server của hãng Sun đối trọng với ASP
của Microsoft
- JSP dùng ngôn ngữ Java cho các phát biểu như if, for, do…while, while, biểu
thức, lời gọi hàm… và phân biệt chữ HOA và thường
- Hiện JSP có thể chạy trên nhiều Web server khác nhau từ Tomcat, Apache,
Jrun, JavaWebServer, Miễn là chúng hỗ trợ Servlet Engine
- Mỗi Webserver chỉ hỗ trợ tối đa 1 trong 2 công nghệ JSP hay ASP Để server
nhận biết được file nào là JSP, ta luôn dùng extension đã qui định theo cấu hình
(mặc định là *.jsp)
1.7.2 Cấu trúc trang Java Sever Page
- Một trang JSP là 1 file *.jsp , ví dụ: “hello.jsp”
- Viết một trang JSP bằng bất kỳ trình soạn thảo nào kể cả Notepad, rồi lưu lại
với tên *.jsp
Trường Đại học Kinh tế Huế
Trang 18- JSP thường dùng các đối tượng Java chính quy để xử lý các giải thuật phức tạp.
Các đối tượng java này sẽ được đóng gói dạng JavaBean
- Đoạn script JSP được đóng trong tag <% %>
- Biểu thức dạng: <%= (exp) %> tương đương với <% out.print( exp ) %>
1.8 Servlet
Servlet là một công nghệ được sử dụng để tạo ra ứng dụng web, Servlet chạy được
trên tất cả cá Web servers và các app Server chuẩn
Servlet thực hiện các nhiệm vụ chính sau đây:
- Nhận dữ liệu từ khách hàng gửi tới Dữ liệu có thể là 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, …
- Xử lý dữ liệu và tạo ra các kết quả Quá trình này có thể yê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 trả dữ liệu rõ ràng 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: HTML, XML, hình ảnh GIF, Excel, …
- 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ề,thiết lập
cookie và các tham số bộ nhớ đệm, và các tác vụ khác
1.9 Mô hình MVC (Model – View – Controller)
1.9.1 Khái niệm mô hình MVC
MVC(Model – View – Controller) là mô hình thiết kế mang tính tổng thể để giải
quyết vấn đề có tính nghiệp vụ cao, thường áp dụng cho những dự án lớn và có tính
thương mại cao Mô hình MVC được tạo ra bởi Krasner và Pope năm 1988 cho
Smalltalk, hiện tại được IBM và Apache ứng dụng trong các dự án của họ rất thành
công Đây là một giải pháp cho phép xây dựng các ứng dụng phân tầng một cách rất
Trường Đại học Kinh tế Huế
Trang 19hiệu quả, bằng cách tạo ra những phương thức quản lý từng tầng một cách riêng lẽ.
Trong J2EE, thì MVC cũng được xây dựng dựa trên những tính năng mạnh của công
nghệ JSP và Servlet
1.9.2 Cấu trúc mô hình
MVC gồm 3 tầng: Model: Tách riêng phần Logic và phần hiển thị
JavaBean: Chứa các thực thể, gồm các dữ liệu (private), kèm theo các phương
thức set/get
DAO: Thực hiện các công việc liên quan đến CSDL như kết nối, lấy dữ liệu,
truy vấn, chỉnh sửa, thêm xóa dữ liệu trực tiếp với databasse
BO: Truyền yêu cầu từ Servlet chuyển qua DAO, lấy dữ liệu DAO về cho
Servlet Xử lý các yêu cầu nghiệp vụ
View: Là các trang JSP, nhiệm vụ trả về hiển thị cho người dùng Controller: Là
các trang JSP, có nhiệm vụ nhân các yêu cầu từ người dùng, đưa yêu cầu và
nhận dữ liệu từ tầng Model, từ đó chuyển hướng và trả về cho tầng View
1.9.3 Tiến trình thực thi mô hình MVC
Tiến trình thực thi mô hình của Struts như sau :
1 Một yêu cầu (request) được gửi đến từ view
2 ActionServlet sẽ tiếp nhận request này, phân tích, kiểm tra Sau đó chỉ định
cho Action tương ứng thực thi yêu cầu, tính toán những tác vụ cần thiết
ActionServlet đóng vai trò là Controller
3 Action sẽ thao tác và xử lí trên Model của ứng dụng
4 Mỗi khi Action hoàn thành việc thao tác và xử lí, nó trả quyền điều khiển về
cho ActionServlet kèm theo một key gắn kèm với kết quả trả về ActionServlet
sẽ dựa vào key này mà quyết định xem các kết quả trả về sẽ được hiển thị như
thế nào 5 ActionServlet trả lời bằng cách gửi lại một request cho view là một
liên kết đến kết quả trả về của Action thông qua key trên Sau đó, view làm nốt
công việc trình bày kết quả
1.10 Hệ quản trị cơ sở dữ liệu Microsoft SQL Server
SQL (Structure Query Language) là một công cụ quản lý dữ liệu được sử dụng
phổ biển ở nhiều lĩnh vực và nó bao gồm tập các câu lệnh sử dụng để tương tác với cơ
Trường Đại học Kinh tế Huế
Trang 20sở dữ liệu quan hệ Hầu hết các ngôn ngữ bậc cao đều có trình hỗ trợ SQL nhưJava,
C#, C, C++…
SQL được sử dụng để điều khiển tất cả các chức năng mà một hệ quản trị cơ sở dữ
liệu cung cấp cho người dùng bao gồm: định nghĩa dữ liệu, truy xuất và thao tác dữ
liệu, điều khiển và truy cập
Đặc điểm của SQL:
- SQL là ngôn ngữ tựa tiếng Anh
- SQL là ngôn ngữ phi thủ tục, nó không yêu cầu cách thức truy nhập cơ sở dữ
liệu như thế nào, tất cả các thông báo của SQL đều rất dễ sử dụng và ít khả
năng mắc lỗi
- SQL cung cấp tập lệnh phong phú cho các công việc hỏi đáp dữ liệu
- Chèn, cập nhật, xóa các hàng trong một quan hệ
- Tạo, sửa đổi, thêm và xóa các đối tượng của cơ sở dữ liệu
- Điều khiển việc truy nhập tới cơ sở dữ liệu và các đối tượng của cơ sở dữ liệu
để đảm bảo tính bảo mật của cơ sở dữ liệu
- Đảm bảo tính nhất quán và sự ràng buộc của cơ sở dữ liệu
- SQL sử dụng các kiểu dữ liệu cơ bản: Integer, Number(n,p), char(n),
varchar(n), nvarchar(n), ….v.v
Trường Đại học Kinh tế Huế
Trang 21CHƯƠNG II: PHÂN TÍCH THIẾT KẾ WEBSITE CỬA HÀNG ÁO CƯỚI
2.1 Mô tả hệ thống
Website áo cưới Tiên Wedding cung cấp các dịch vụ cho thuê váy cưới, dịch vụ
trang điểm, đào tạo các khoá học về trang điểm, giới thiệu những hình ảnh đẹp về các
sản phẩm và dự án đã thực hiện, cập nhật những thông tin mới về áo cưới, ảnh cưới và
những tin tức về tuyển dụng hay khuyến mãi
Hệ thống phục vụ các đối tượng người dùng chính:
- Khách hàng: có thể truy cập và xem thông tin trên website như thông tin áo
cưới, ảnh cưới đẹp, đọc tin tức hữu ích để áp dụng cho bản thân Khi có những
thắc mắc, góp ý hay muốn đặt lịch hẹn khách hàng có thể phản hồi qua các bình
luận hoặc qua form đặt lịch hẹn để gửi về hệ thống
- Người quản trị: là người có quyền quản trị cao nhất đối với website, theo dõi và
quản lý mọi hoạt động của website Người quản trị có thể thực hiện các công
việc như: đăng tin tức, xoá tin tức, sửa tin tức, đăng ảnh áo cưới, ảnh cưới đẹp,
chỉnh sửa thông tin và nội dung website
Hệ thống hoạt động như sau:
- Về khách hàng:
+ Khách hàng truy cập vào website của cửa hàng, website sẽ cung cấp những
thông tin đầy đủ về sản phẩm áo cưới, trang điểm và các khoá đào tạo về trang
điểm Bên cạnh đó khách hàng có thể xem những bộ ảnh cưới, ảnh cô dâu,
người mẫu ảnh qua các sản phẩm cửa hàng đã thực hiện
+ Nếu muốn đặt lịch hẹn khách hàng sẽ nhập vào ô đặt lịch hẹn những thông
tin như tên khách hàng, số điện thoại, email, ngày hẹn, nội dung tin nhắn và gửi
về hệ thống của website Sau khi đặt lịch hẹn khách hàng sẽ được phản hồi về
lịch hẹn của mình qua điện thoại hoặc email
- Về người quản trị:
+ Người quản trị gồm có các thông tin: tên đăng nhập, mật khẩu
Trường Đại học Kinh tế Huế
Trang 22+ Người quản trị đăng nhập vào tài khoản để quản lý, theo dõi mọi hoạt động
của website
+ Người quản trị quản lý các nghiệp vụ:
Quản lý tin tức: cho phép người quản trị thực hiện các chức năng nhập tintức, sửa tin tức, xoá tin tức và đăng tin tức lên website
Quản lý danh mục tin tức: cho phép người quản trị thực hiện các chức năngthêm danh mục, sửa danh mục, xoá danh mục và hiển thị danh mục tin tức lên
năng xác nhận đã liên hệ, sửa lịch hẹn, xoá lịch hẹn
2.2 Yêu cầu chức năng của hệ thống
Hệ thống cần đạt được các chức năng:
- Giao diện website được thiết kế trực quan, màu sắc phù hợp với chủ đề áo cưới
- Hiển thị nội dung chính, làm nổi bật dịch vụ mà cửa hàng cung cấp
- Giao diện quản trị dễ thao tác, dễ cập nhật các tính năng mới
- Website yêu cầu được bảo mật, cung cấp tài khoản và mật khẩu để có thể đăng
nhập vào hệ thống
Trường Đại học Kinh tế Huế
Trang 232.3 Biểu đồ gói
Hình 2.1: Bi ểu dồ gói tổng quát
2.4 Biểu đồ Use-case
2.4.1 Xác định các Use-case
- Tác nhân người quản trị có các Use-case sau:
+ Đăng nhập, đăng xuất
Trang 242.4.2 Sơ đồ Use-case tổng quát
Hình 2.2 : Sơ đồ Use-case tổng quát
Sơ đồ use-case thể hiện chức năng tổng quát của tác nhân khách hàng và tác nhân
người quản trị:
- Khách hàng có chức năng: xem thông tin xem thông tin cửa hàng, xem album
ảnh, xem tin tức, xem đánh giá, đặt lịch hẹn
- Người quản trị có các chức năng: quản lý danh mục, quản lý tin tức, quản lý
album ảnh, quản lý lịch hẹn
Trường Đại học Kinh tế Huế
Trang 252.4.3 Sơ đồ Use-case đăng nhập
Hình 3 2: Sơ đồ Use-case đăng nhập
Đặc tả Use-case:
B ảng 2.1: Đặc tả Use-case đăng nhập
Điều kiện kích hoạt Người quản trị chọn chức năng đăng nhập
Tiền điều kiện Người quản trị chưa đăng nhập vào hệ thống
Hậu điều kiện Người quản trị đăng nhập thành công và thực hiện toàn
bộ chức của hệ thống
Luồng sự kiện chính 1 Người quản trị chọn chức năng đăng nhập
2 Hệ thống hiển thị form Đăng nhập
3 Người quản trị nhập tên tài khoản, mật khẩu đểđăng nhập
4 Hệ thống xác thực tên tài khoản, mật khẩu
5 Người quản trị đăng nhập vào hệ thống nếu xácthực tài khoản thành công Nếu không thànhcông thì thực hiện luồng sự kiện phụ 2
6 Kết thúc use case
Luồng sự kiện phụ 1 Người quản trị huỷ yêu cầu đăng nhập và thoát
2 Người quản trị đăng nhập thất bại
2.1 Hệ thống thông báo đã nhập sai tên tài khoảnhoặc mật khẩu
Trường Đại học Kinh tế Huế
Trang 262.2 Hệ thống yêu cầu nhập lại tên tài khoản vàmật khẩu
2.3 Nếu đồng ý thì quay về bước 3 của luồng sựkiện chính, nếu không đồng ý thì Use-casekết thúc
Người quản trị có thể đăng xuất bằng cách chọnchức năng đăng xuất trên hệ thống
2.4.4 Sơ đồ Use-case quản lý danh mục
Hình 2.4 : Sơ đồ Use-case quản lý danh mục
Đặc tả Use-case:
B ảng 2.2: Đặc tả Use-case quản lý danh mục
Mô tả Cho phép người quản trị thêm, sửa, xoá danh mục đã
chọn
Điều kiện kích hoạt Người quản trị chọn chức năng quản lý danh mục
Tiền điều kiện Người quản trị đã đăng nhập vào hệ thống
Hậu điều kiện Người quản trị thêm, sửa, xoá danh mục thành công và
lưu vào cơ sở dữ liệu của hệ thống
Luồng sự kiện chính 1 Người quản trị chọn chức năng quản lý danh
mục
2 Hệ thống hiển thị danh sách danh mục
3 Người quản trị chọn danh mục và chức năngmuốn tác động lên danh mục đó
Trường Đại học Kinh tế Huế
Trang 27- Thêm danh mục:
1.1 Hệ thống hiển thị form thêm danh mục
1.2 Người quản trị nhập thông tin danh mục
1.3 Nhấn nút lưu1.4 Nếu thêm thành công thì lưu thông tindanh mục vào cơ sở dữ liệu Nếu khôngthành công thì thực hiện luồng sự kiện phụ 1
- Xoá danh mục:
1.1 Hệ thống hiển thị thông tin danh mục đãchọn
1.2 Người quản trị nhấn nút xoá
1.3 Hệ thống hiển thị thông báo xác nhậnxoá
1.4 Nếu đồng ý thì thông báo danh mục đãđược xoá Nếu không thì hiển thị lại danhsách danh mục
4 Kết thúc Use-caseLuồng sự kiện phụ 1 Người quản trị thực hiện chức năng thất bại
1.1 Hệ thống thông báo nhập thông tin khônghợp lệ
1.2 Người quản trị nhập lại thông tin1.3 Quay lại bước 1.3 ở luồng sự kiện chính
2 Nếu dữ liệu về danh mục đã tồn tại thì chỉ chophép sửa, xóa thông tin
3 Hệ thống báo không hợp lệ khi chọn chức năngthêm danh mục mà nhập mã danh mục bị trùng
Trường Đại học Kinh tế Huế
Trang 282.4.5 Sơ đồ Use-case quản lý tin tức
Hình 2.5 : Sơ đồ Use-case quản lý tin tức
Đặc tả Use-case:
B ảng 2.3: Đặc tả Use-case quản lý tin tức
Mô tả Cho phép người quản trị thêm, sửa, xoá tin tức đã chọn
Điều kiện kích hoạt Người quản trị chọn chức năng quản lý tin tức
Tiền điều kiện Người quản trị đã đăng nhập vào hệ thống
Hậu điều kiện Người quản trị thêm, sửa, xoá tin tức thành công và lưu
vào cơ sở dữ liệu của hệ thống
Luồng sự kiện chính 1 Người quản trị chọn chức năng quản lý tin tức
2 Hệ thống hiển thị danh sách tin tức
3 Người quản trị chọn tin tức và chức năng muốntác động lên tin tức đó
- Thêm tin tức:
1.1 Hệ thống hiển thị form thêm tin tức
1.2 Người quản trị nhập thông tin tin tức
1.3 Nhấn nút lưu1.4 Nếu thêm thành công thì lưu thông tintin tức vào cơ sở dữ liệu Nếu không thànhcông thì thực hiện luồng sự kiện phụ 1
- Sửa tin tức:
1.1 Hệ thống hiển thị thông tin tin tức đã
Trường Đại học Kinh tế Huế
Trang 291.2 Người quản trị nhập lại thông tin về tintức cần sửa
1.3 Nhấn nút lưu1.4 Nếu sửa thành công thì cập nhật thôngtin tin tức vào cơ sở dữ liệu Nếu khôngthành công thì thực hiện luồng sự kiện phụ 1
- Xoá tin tức:
1.1 Hệ thống hiển thị thông tin tin tức đãchọn
1.2 Người quản trị nhấn nút xoá
1.3 Hệ thống hiển thị thông báo xác nhậnxoá
1.4 Nếu đồng ý thì thông báo tin tức đã đượcxoá Nếu không thì hiển thị lại danh sách tintức
4 Kết thúc Use-caseLuồng sự kiện phụ 1 Người quản trị thực hiện chức năng thất bại
a Hệ thống thông báo nhập thông tin khônghợp lệ
b Người quản trị nhập lại thông tin
c Quay lại bước 1.3 ở luồng sự kiện chính
2 Nếu dữ liệu về tin tức đã tồn tại thì chỉ cho phépsửa, xóa thông tin
3 Hệ thống báo không hợp lệ khi chọn chức năngthêm tin tức mà nhập mã tin tức bị trùng
Trường Đại học Kinh tế Huế
Trang 302.4.6 Sơ đồ Use-case quản lý album ảnh
Hình 2.6 : Sơ đồ Use-case quản lý album ảnh
Đặc tả Use-case:
B ảng 2.4: Đặc tả Use-case quản lý album ảnh
Điều kiện kích hoạt Người quản trị chọn chức năng quản lý album ảnh
Tiền điều kiện Người quản trị đã đăng nhập vào hệ thống
Hậu điều kiện Người quản trị thêm, sửa, xoá album ảnh thành công và
lưu vào cơ sở dữ liệu của hệ thống
Luồng sự kiện chính 1 Người quản trị chọn chức năng quản lý album
ảnh
2 Hệ thống hiển thị danh sách album ảnh
3 Người quản trị chọn album ảnh và chức năngmuốn tác động lên tin tức đó
- Thêm album ảnh:
1.1 Hệ thống hiển thị form thêm album ảnh
1.2 Người quản trị nhập thông tin albumảnh
1.3 Nhấn nút lưu1.4 Nếu thêm thành công thì lưu album ảnhvào cơ sở dữ liệu Nếu không thành công thìthực hiện luồng sự kiện phụ 1
Trường Đại học Kinh tế Huế
Trang 31- Xoá tin tức:
1.1 Hệ thống hiển thị thông tin album ảnh đãchọn
1.2 Người quản trị nhấn nút xoá
1.3 Hệ thống hiển thị thông báo xác nhậnxoá
1.4 Nếu đồng ý thì thông báo tin tức đã đượcxoá Nếu không thì hiển thị lại danh sách tintức
4 Kết thúc Use-caseLuồng sự kiện phụ 1 Người quản trị thực hiện chức năng thất bại
1.1 Hệ thống thông báo nhập thông tin khônghợp lệ
1.2 Người quản trị nhập lại thông tin1.3 Quay lại bước 1.3 ở luồng sự kiện chính
2 Nếu dữ liệu về album ảnh đã tồn tại thì chỉ chophép sửa, xóa thông tin
3 Hệ thống báo không hợp lệ khi chọn chức năngthêm album ảnh mà nhập mã album ảnh bị trùng
Trường Đại học Kinh tế Huế
Trang 322.4.7 Sơ đồ Use-case quản lý lịch hẹn
Hình 2.7 : Sơ đồ Use-case quản lý lịch hẹn
Đặc tả Use-case:
B ảng 2.5: Đặc tả Use-case quản lý lịch hẹn
Mô tả Cho phép người quản trị cập nhật, sửa, xoá lịch hẹn
Điều kiện kích hoạt Người quản trị chọn chức năng quản lý lịch hẹn
Tiền điều kiện Người quản trị đã đăng nhập vào hệ thống
Hậu điều kiện Người quản trị lịch hẹn, sửa, xoá album ảnh thành công
và lưu vào cơ sở dữ liệu của hệ thống
Luồng sự kiện chính 1 Người quản trị chọn chức năng quản lý lịch hẹn
Trường Đại học Kinh tế Huế
Trang 33- Xoá lịch hẹn:
1.1 Hệ thống hiển thị thông tin lịch hẹn đãchọn
1.2 Người quản trị nhấn nút xoá
1.3 Hệ thống hiển thị thông báo xác nhậnxoá
1.4 Nếu đồng ý thì thông báo lịch hẹn đãđược xoá Nếu không thì hiển thị lại danhsách lịch hẹn
4 Kết thúc Use-caseLuồng sự kiện phụ 1 Người quản trị thực hiện chức năng thất bại
a Hệ thống thông báo nhập thông tin khônghợp lệ
b Người quản trị nhập lại thông tin
c Quay lại bước 1.3 ở luồng sự kiện chính
2 Hệ thống báo không hợp lệ khi chọn chức năngthêm lịch hẹn mà nhập mã lịch hẹn hoặc thờigian bị trùng
Trường Đại học Kinh tế Huế