Mặc dù vậy, không phải tất cả mọi người đều hiểu được website bán hàng trực tuyến là gì và tầm quan trọng của việc thiết kế website bán hàng trong việc thúc đẩy doanh thu và quảng bá thư
Trang 1KHOA HỆ THỐNG THÔNG TIN VÀ VIỄN THÁM
BÁO CÁO ĐỒ ÁN MÔN HỌC
CÔNG NGHỆ JAVA
Thiết Kế Và Xây Dựng Website Bán Trang Sức
Giảng viên hướng dẫn : Th.S Đặng Đức Trung
Sinh viên thực hiện : Phương Gia Mẫn
Trang 2mở đầu, chương 1 Cơ sở lý
thuyết, Chương 2 Phân tích thiết
kế phần mềm, Chương 3 Kết quả
thử nghiệm, Phần Kết luận và
hướng phát triển, Danh mục Tài
liệu tham khảo)
4 quả cài đặt thử nghiệmTiểu luận có trình bày kết 1
5 giao diện hợp lýDự án có trang chủ với 1
6 với dữ liệu truy vấn được từ cơDự án có trang thông tin
Có form chức năng thực hiện
được chức năng chính của dự án 1
Trang 3
2 Điểm đánh giá (theo thang điểm 10)
TP HCM, ngày … tháng … năm …
Giáo viên hướng dẫn
(Ký và ghi rõ họ tên)
Trang 4"Đầu tiên, chúng em xin gửi lời cảm ơn chân thành đến Trường Đại học TàiNguyên Và Môi Trường đã đưa môn học Công Nghệ Java vào chương trình giảngdạy Đặc biệt, em xin gửi lời cảm ơn sâu sắc đến giảng viên bộ môn - ThS ĐặngĐức Trung đã dạy dỗ, truyền đạt những kiến thức quý báu cho em trong suốt thờigian học tập vừa qua Trong thời gian tham gia lớp học Công Nghệ Java của thầy,
em đã có thêm cho mình nhiều kiến thức bổ ích, tinh thần học tập hiệu quả, nghiêmtúc Đây chắc chắn sẽ là những kiến thức quý báu, là hành trang để em có thể vữngbước sau này
Bộ môn Công Nghệ Java là môn học thú vị, vô cùng bổ ích và có tính thực tế cao.Đảm bảo cung cấp đủ kiến thức, gắn liền với nhu cầu thực tiễn của sinh viên Tuynhiên, do vốn kiến thức còn nhiều hạn chế và khả năng tiếp thu thực tế còn nhiều bỡngỡ Mặc dù em đã cố gắng hết sức nhưng chắc chắn bài báo cáo cuối khóa khó cóthể tránh khỏi những thiếu sót và nhiều chỗ còn chưa chính xác, kính mong thầyxem xét và góp ý để bài báo cáo của em được hoàn thiện hơn
Em xin chân thành cảm ơn!”
Trang 5Hình 1.2: Biểu đồ chức năng đăng kí Error! Bookmark not defined.
Hình 1.3: Biểu đồ chức năng thêm sản phẩm Error! Bookmark not defined.
Hình 1.4: Biểu đồ chức năng chỉnh sửa sản phẩm Error! Bookmark not defined.
Hình 1.5: Biểu đồ chức năng xoá sản phẩm Error! Bookmark not defined.
Hình 2.1: Biểu đồ UseCase Admin Error! Bookmark not defined.
Hình 2.2: Biểu đồ UseCase Khách hàng Error! Bookmark not defined.
Hình 3.1: Biểu đồ cơ sở dữ liệu Error! Bookmark not defined.
Hình 4.1: Biểu đồ ERD Product Error! Bookmark not defined.
Hình 4.2: Biểu đồ ERD Admin Error! Bookmark not defined.
Hình 4.3: Biểu đồ ERD Customer Error! Bookmark not defined.
Hình 5.1: Biểu đồ Class Product Error! Bookmark not defined.
Hình 5.2: Biểu đồ Class Admin Error! Bookmark not defined.
Hình 5.3: Biểu đồ Class Customer Error! Bookmark not defined.
Hình 6.1: Biểu đồ Table Product Error! Bookmark not defined.
Hình 6.2: Biểu đồ Table Admin Error! Bookmark not defined.
Hình 6.3: Biểu đồ Class Customer Error! Bookmark not defined.
Hình 7.1 Giao diện màn hình chính Error! Bookmark not defined.
Hình 7.2 Giao diện Menu Error! Bookmark not defined.
Hình 7.3 Giao diện giỏ hàng Error! Bookmark not defined.
Hình 7.4 Giao diện edit sản phẩm Error! Bookmark not defined.
Hình 7.5 Giao diện Manager Product Error! Bookmark not defined.
Hình 7.6 Giao diện trang đăng nhập Error! Bookmark not defined.
Hình 7.7 Giao diện trang đăng kí Error! Bookmark not defined.
Trang 61 Giới thiệu 1
2 Lý do chọn đề tài 1
2.1 Mục đích của đề tài 2
2.2.Mục tiêu của đề tài 2
3 Đối tượng nghiên cứu 4
3.1 Người tiêu dùng 4
3.2 Nhà sản xuất và nhà cung cấp 4
4 Phạm vi nghiên cứu 4
CHƯƠNG 1: CƠ SỞ LÝ THUYẾT 5
1 Tổng quan về ngôn ngữ lập trình Java 5
1.1 Java là ngôn ngữ lập trình đơn giản 5
1.2 Ngôn ngữ lập trình Java hướng đối tượng 5
1.4 Độc lập nền 6
1.5 Tính bảo mật 6
1.6 Tính năng động 6
2 Tổng quan về JSP và Servlet 6
2.1 Khái niệm JSP 6
2.2 Khái niệm Servlet 7
3 Tổng quan về Eclipse 8
4 Tổng quan về Cơ sở dữ liệu quan hệ 8
CHƯƠNG 2: PHÂN TÍCH THIẾT KẾ PHẦN MỀM 10
1 Thiết kế biểu đồ chức năng 10
2 Thiết kế sơ đồ Use Case 12
3 Thiết kế cơ sở dữ liệu 13
4 Sơ đồ ERD 14
5 Thiết kế các Class Diagram 15
Trang 7CHƯƠNG 4: KẾT LUẬN VÀ HƯỚNG PHÁT TRIỂN 22
1 Ưu điểm 22
2 Nhược Điểm: 22
3 Kết luận 23
4 Bài học 24
TÀI LIỆU THAM KHẢO 28
Trang 8MỞ ĐẦU
1 Giới thiệu
Ngày nay công nghệ thông tin phát triển ngày càng mạnh mē, nhanh chóng.Những thành tựu của công nghệ thông tin làm thay đổi mọi mặt của đời sống xã hội,xâm nhập vào nhiều lĩnh vực khoa học, kỹ thuật cũng như trong cuộc sống Nó trởthành công cụ hỗ trợ đặc lực không thể thiếu trong nhiều lĩnh vực hoạt động như:ứng dụng trong công tác quản lý, nghiên cứu và đặc biệt trong công tác quản lýnói chung và quản lý hoạt động kinh doanh nói riêng
Bên cạnh việc mở các cửa hàng kinh doanh theo kiểu truyền thống với lợithế về mặt bằng, ngày càng có nhiều doanh nghiệp đi theo hướng phát triển hoạtđộng bán hàng trực tuyến, trong đó nổi bật nhất là bán hàng trực tuyến qua websitebán hàng Mặc dù vậy, không phải tất cả mọi người đều hiểu được website bán hàngtrực tuyến là gì và tầm quan trọng của việc thiết kế website bán hàng trong việc thúcđẩy doanh thu và quảng bá thương hiệu hiệu quả đối với cửa hàng, doanh nghiệptrong thời đại Internet bùng nổ như hiện nay
Xuất phát từ thực tế đó, những người làm công nghệ thông tin hướng nghiêncứu của mình vào các vấn đề liên quan tới thiết kế một website bán hàng onlinephục vụ cho mục đích như vậy nhằm phụ vụ tới người dùng một cách tốt nhất vềsản phẩm và chất lượng
2 Lý do chọn đề tài
Một trang web bán trang sức là một nền tảng trực tuyến cho phép người dùngkhám phá, xem và mua các sản phẩm trang sức từ các nhà sản xuất, thương hiệuhoặc người bán hàng trên mạng Đây là một điểm đến chính cho những người đam
mê trang sức để tìm kiếm, so sánh, và mua sắm các mẫu trang sức đa dạng từ vàng,bạc, kim cương, đá quý, đến trang sức thủ công, vintage và thiết kế độc đáo
Trang 92.1 Mục đích của đề tài
Mục đích của thiết kế website là tạo ra một website bán sản phẩm cho ngườidùng Các trang web thành công nhất được tối ưu hóa cần thận để đạt được tỷ lệmua hàng cao
Thiết kế website bán hàng trực tuyến giúp các cửa hàng, doanh nghiệp có thểchủ động xây dựng hình ảnh, quảng bá thương hiệu theo yêu cầu riêng đối với mộtwebsite bán hàng, các cửa hàng, doanh nghiệp có thể thoải mái xây dựng hoặc tủybiến giao diện, nội dung, bố cục, hình ảnh sản phẩm, dịch vụ hay các chương trìnhkhuyến mai một cách thuận tiện, chủ động tạo sự lôi cuốn nhất đối với khách hàngkhi ghé thăm website Đồng thời tạo nên các giao diện, các đặc trưng khác biệt màcác đối thủ khác không có được từ đó tạo dấu ấn thương hiệu và quảng bá hình ảnhthương hiệu hiệu quả
Website bán hàng là kênh tương tác hiệu quả nhất đối với khách hàng bởikhả năng nhận thông tin phản hồi nhanh chóng thông qua tính năng chat trực tuyếnhoặc các hình thức liên hệ trực tuyến khác Đồng thời khách mua hàng có thể nhanhchóng đưa ra các đánh giá, phản hồi về sản phẩm, dịch vụ ngay trên website giúpcác cửa hàng, doanh nghiệp phục vụ khách hàng tốt hơn
Website bán hàng trực tuyến có thể hoạt động liên tục, mọi giao dịch muabán, đặt hàng của khách mua hàng được thực hiện 24/7 ngay cả vào ban đêm khicửa hàng, doanh nghiệp của bạn ngừng hoạt động giúp thúc đẩy doanh thu hiệu quả
Khi thiết kế website bán hàng thì doanh nghiệp còn tiết kiệm được rất nhiềuchi phí thuê mặt bằng hay nhân viên phục vụ so với việc mở một cửa hàng Bạn cóthể bán hàng mọi lúc trên Internet mà không cần quan tâm tới việc phải quản lýnhân viên của bạn
2.2.Mục tiêu của đề tài
Thiết kế một website hướng đến trở thành một Siêu thị thông tin về bán trang sức,trong đó không chỉ thực hiện tốt việc cung cấp thông tin dữ liệu về trang sức mớinhất, khai thác thị trường tiềm năng mà còn:
‒ Website chứa đầy đủ hình ảnh và thông tin về các loại trang sức
Trang 10‒ Website chứa đầy đủ các chức năng cần thiết nhằm giới thiệu sản phẩm, tư vấnkhách hàng
‒ Các tác vụ phải linh hoạt và thuận tiện cho khách hàng: bố trí site để các chứcnăng được thực hiện dễ dàng
‒ Bảo trì: với các lớp được phân chia, các thành phần của một hệ thống dễ đượcthay đổi, nhưng sự thay đổi có thể được cô lập trong từng lớp hoặc chỉ ảnhhưởng đến lớp ngay gần kề của nó, chứ không làm ảnh hưởng cả chương trình
‒ Mở rộng: Việc thêm chức năng vào cho từng lớp sẽ dề dàng hơn là phân chiatheo cách khác
Đặc điểm của một trang web bán trang sức:
‒ Đa dạng sản phẩm: Bao gồm nhiều loại trang sức như vòng cổ, nhẫn, bông tai,vòng tay, vàng, bạc, kim cương, đá quý, ngọc trai, và sản phẩm thủ công
‒ Giao diện người dùng thân thiện: Thiết kế giao diện đẹp, dễ sử dụng, hiển thịsản phẩm rõ ràng, có hình ảnh và thông tin chi tiết về sản phẩm
‒ Chất lượng và đáng tin cậy: Cung cấp sản phẩm chất lượng, chính hãng, cóchứng nhận và bảo hành
‒ Tính cá nhân hóa: Có khả năng tùy chỉnh sản phẩm, tùy chọn làm đo theo yêucầu của khách hàng
‒ Dịch vụ hỗ trợ: Hỗ trợ khách hàng tận tình, chăm sóc sau bán hàng, chính sáchđổi trả linh hoạt và thân thiện với người dùng
‒ An toàn và bảo mật: Bảo mật thông tin cá nhân và thanh toán, cung cấp môitrường mua sắm an toàn và đáng tin cậy
‒ Chiến lược Marketing: Sử dụng các kênh quảng cáo trực tuyến, mạng xã hội,SEO để tiếp cận và thu hút khách hàng tiềm năng
Một trang web bán trang sức thường mang lại trải nghiệm mua sắm tiện lợi và đadạng cho người tiêu dùng, từ việc trải nghiệm sản phẩm tới việc chọn lựa và muahàng từ nhà cung cấp uy tín
Trang 113 Đối tượng nghiên cứu
Đối tượng nghiên cứu của một website bán trang sức có thể bao gồm các nhómkhách hàng, các nhà sản xuất hoặc nhà cung cấp trang sức, cũng như các chuyên giatrong lĩnh vực này Dưới đây là một số nhóm đối tượng chính:
3.1 Người tiêu dùng
Người mua sắm trực tuyến: Bao gồm những người có quan tâm đến việc mua trangsức trực tuyến, từ những người tiêu dùng cá nhân đến các doanh nghiệp mua sắmtrang sức để bán lại
Khách hàng đang sử dụng website: Người dùng thực sự của website, từ nhữngngười chưa từng mua sắm tới những người đã mua và trải nghiệm dịch vụ
3.2 Nhà sản xuất và nhà cung cấp
Các nhà sản xuất trang sức: Đối tượng nghiên cứu có thể bao gồm các nhà thiết kế
và sản xuất trang sức để hiểu về nhu cầu thị trường và cải thiện sản phẩm
Nhà cung cấp sản phẩm: Các đối tác cung cấp trang sức cho website, từ các thươnghiệu lớn đến các nhà sản xuất độc lập
4 Phạm vi nghiên cứu
‒ Phạm vi nghiên cứu sẽ tập trung vào quá trình phát triển và triển khai trang webbán trái cây sử dụng ngôn ngữ lập trình Java Phạm vi này sẽ bao gồm nhiềukhía cạnh quan trọng, từ quản lý dữ liệu đến giao diện người dùng và tích hợpcác dịch vụ bổ sung
‒ Phạm vi nghiên cứu cũng sẽ tập trung vào khả năng linh hoạt của Java, đặc biệt
là khả năng thích ứng với nền tảng đa thiết bị Xem xét cách Java có thể cungcấp trải nghiệm nhất quán và tối ưu hóa trang web trên nhiều loại thiết bị khácnhau
‒ Cuối cùng, định rõ phạm vi về tích hợp của Java với các dịch vụ thanh toán trựctuyến và quản lý kho Nghiên cứu sẽ xem xét cách Java hỗ trợ kết nối với các hệthống bên ngoài để cung cấp một trải nghiệm mua sắm trực tuyến toàn diện
Trang 12CHƯƠNG 1: CƠ SỞ LÝ THUYẾT
1 Tổng quan về ngôn ngữ lập trình Java
Java là được nhiều lập trình viên biết đến là ngôn ngữ lập trình hướng đốitượng (OOP), dựa trên các lớp (class) Ngôn ngữ Java được phát triển vào năm
1995 bởi Sun Microsystems do James Gosling khởi xướng
Khác biệt với các ngôn ngữ lập trình khác, Java mang một màu sắc riêng.Thay vì biên dịch mã nguồn thành mã máy hoặc thông dịch mã nguồn mới có thểchạy được, thì Java được thiết kế để biên dịch mã nguồn thành bytecode, sau đóbytecode sẽ được môi trường thực thi chạy
Ngôn ngữ Java được viết ra với tiêu chí “viết một lần, thực thi khắp nơi”.Hiện tại, chương trình phần mềm viết bằng Java có thể khởi tạo trên mọi nền tảngkhác nhau chỉ qua một môi trường thực thi, điều kiện là môi trường đó phải phù hợp
hỗ trợ nền tảng đó
1.1 Java là ngôn ngữ lập trình đơn giản
‒ Ngôn ngữ lập trình Java không phải là một dạng cakewalk, nhưng cú pháp của
nó rất đơn giản và dễ hiểu Java bắt nguồn từ nhiều cú pháp từ các ngôn ngữ lậptrình C và C ++, vì vậy nếu bạn biết bất kỳ ngôn ngữ nào trong số này thì việclập trình với ngôn ngữ Java sẽ trở nên dễ dàng hơn
‒ Java đã loại bỏ nhiều tính năng phức tạp và ít được sử dụng hơn Hơn nữa, tínhnăng tự động thu gom code thừa sẽ giúp loại bỏ các cá thể đối tượng không sửdụng và ngốn bộ nhớ mà không cần phải làm điều đó theo cách thủ công
1.2 Ngôn ngữ lập trình Java hướng đối tượng
‒ Java là một ngôn ngữ lập trình hướng đối tượng Lập trình hướng đối tượng(OOP) là một mô hình lập trình tổ chức thiết kế phần mềm xung quanh dữ liệu,chứ không phải là các chức năng và logic
Trang 13‒ Đối tượng là một trường dữ liệu với tập hợp các thuộc tính và hành vi riêng của
nó Lập trình hướng đối tượng (OOP) tập trung vào các đối tượng mà các nhàphát triển muốn xử lý, thay vì logic được yêu cầu để thao tác
‒ Loại lập trình này phù hợp với các dự án lớn, phức tạp và được cập nhật hoặcbảo trì thường xuyên Điều này bao gồm phần mềm sản xuất, thiết kế, ứng dụng
di động
1.4 Độc lập nền
Mã Java có thể chạy trên nhiều nền tảng, bao gồm Windows, Linux, macOS và cácnền tảng khác Trình biên dịch mã Java và chuyển đổi nó thành mã byte, vì Java cóthể hoạt động trên các hệ thống khác nhau, mã byte này không phụ thuộc vào nềntảng, tức là “Viết một lần, Chạy mọi nơi (WORA)”
1.5 Tính bảo mật
Hiện tại, Java hỗ trợ bảo mật rất tốt nhờ các thuật toán mã hóa như mã hóa mộtchiều (one way hashing) hay mã hóa công cộng (public key), v.v Nhờ đó mà khảnăng bảo mật của ngôn ngữ này rất cao, giúp cho lập trình viên có thể yên tâm trongquá trình sử dụng để lập trình phần mềm, ứng dụng, v.v
Các JSP tag đặc biệt, hầu hết bắt đầu với <% và kết thúc với %>
Trang 14JSP thường được làm view trong ứng dụng mvc pattern Thực ra, JSP vẫn cóthể đáp ứng những yêu cầu khác nhưng để thuận tiện cho việc debug hay tái sửdụng các đoạn mã thì người ta thường dùng làm view còn servlet sẽ làm controller.
2.2 Khái niệm Servlet
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,
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ộtmẫu HTML trên một trang Web hoặc nó cũng có thể đến từ một applet hoặcmộ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àybao 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ả Quá trình này có thể yêu cầu nói chuyện vớimộ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ớitrì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ụ,
Trang 153 Tổng quan về Eclipse
Phần Mềm Lập Trình Eclipse 2023 được phát hành vào tháng 9 năm 2023bởi Eclipse Foundation, một tổ chức phi lợi nhuận do IBM, Google, Oracle và nhiềucông ty khác thành lập Eclipse 2023 cung cấp đến người dùng nhiều tính năng mớiđược cải tiến tốt hơn Nhằm đáp ứng nhu cầu của các lập trình viên trong việc pháttriển các ứng dụng phần mềm đa nền tảng
Eclipse được viết bằng ngôn ngữ Java và có thể được sử dụng để phát triểncác ứng dụng Java, C/C++, C, PHP, Python, Ruby, và cùng nhiều ngôn ngữ khác
Eclipse cũng cung cấp nhiều plugin để hỗ trợ các công việc phát triển phầnmềm, chẳng hạn như: Thiết kế giao diện người dùng, kiểm thử phần mềm, quản lý
dự án,…
‒ Eclipse 2023 là phiên bản mới nhất của Eclipse Phiên bản này có nhiều tínhnăng đã được cải tiến và tạo mới, bao gồm:
‒ Hỗ trợ tốt hơn cho Java 19
‒ Một trình biên dịch Java mới nhanh hơn và hiệu quả hơn
‒ Một trình gỡ lỗi Java mới với nhiều tính năng nâng cao
‒ Một trình chỉnh sửa mã mới với nhiều cải tiến về giao di diện người dùng vàtính năng
‒ Nhiều plugin mới và cải tiến
4 Tổng quan về Cơ sở dữ liệu quan hệ
Cơ sở dữ liệu quan hệ là một hệ thống lưu trữ và quản lý dữ liệu dựa trên mô hìnhquan hệ Được phát triển dựa trên nguyên tắc của hệ quản trị cơ sở dữ liệu quan hệ,
cơ sở dữ liệu quan hệ giúp tổ chức dữ liệu một cách logic và có tổ chức, giảm thiểu
sự trùng lặp và tạo điều kiện cho việc truy xuất dữ liệu một cách hiệu quả
‒ Bảng và mối quan hệ:
Trong cơ sở dữ liệu quan hệ, dữ liệu được tổ chức thành các bảng Mỗi bảng đạidiện cho một loại dữ liệu cụ thể và mỗi dòng trong bảng đại diện cho một bản ghi
Trang 16cụ thể Mối quan hệ giữa các bảng được xác định thông qua khóa chính và khóangoại, tạo nên sự kết nối giữa các bảng.
‒ Khóa chính và khóa ngoại
Khóa chính là một trường (hoặc một tập hợp các trường) duy nhất định danh mỗidòng trong bảng Khóa ngoại, ngược lại, là một trường trong bảng mà giữ giá trịliên kết với khóa chính của bảng khác, xây dựng mối quan hệ giữa chúng
‒ Ngôn ngữ truy vấn SQL
Structured Query Language (SQL) là ngôn ngữ chính được sử dụng để truy xuất vàquản lý dữ liệu trong cơ sở dữ liệu quan hệ SQL cung cấp các câu lệnh nhưSELECT, INSERT, UPDATE và DELETE để thực hiện các thao tác truy vấn vàcập nhật dữ liệu
‒ Bảo mật và quản lí gioa Transacton:
Cơ sở dữ liệu quan hệ cung cấp các cơ chế bảo mật để kiểm soát quyền truy cập đốivới dữ liệu Ngoài ra, nó hỗ trợ quản lý giao transacton, đảm bảo tính nhất quán và
an toàn của dữ liệu trong quá trình thực hiện các thay đổi
Trang 17CHƯƠNG 2: PHÂN TÍCH THIẾT KẾ PHẦN MỀM
1 Thiết kế biểu đồ chức năng
Hình 1.1: Biểu đồ chức năng đăng nhập
Hình 1.2: Biểu đồ chức năng đăng kí