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ỌCCÔ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 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ài Nguyên Và Môi Trường đã đưa môn học Công Nghệ Java vào chương trình giảng dạ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ời gian 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êm tú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ững bướ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 Tuy nhiê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ầy xem 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
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
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ợi thế 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 website bá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à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ương hiệu hiệu quả đối với cửa hàng, doanh nghiệp trong 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ên cứ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 online phụ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ùng khá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ệu hoặ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ười dù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ột website 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ủy biế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ình khuyế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àng khi 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 ảnh thươ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ởi khả 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ến hoặ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ể nhanh chóng đưa ra các đánh giá, phản hồi về sản phẩm, dịch vụ ngay trên website giúp cá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 mua bán, đặt hàng của khách mua hàng được thực hiện 24/7 ngay cả vào ban đêm khi cử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ều chi 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ới nhấ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ấn khá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ức nă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ễ được thay đổi, nhưng sự thay đổi có thể được cô lập trong từng lớp hoặc chỉ ảnh hưở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 chia
theo 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êu cầ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ôi trườ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à đa dạ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à mua hà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óm khá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 gia trong 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 trang sứ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ắm trang 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ững ngườ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ương hiệ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 web bá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ều khí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ợp cá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ể cung cấ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ác nhau.
‒ 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ực tuyế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 đối tượ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ảng khá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ập trì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ệc lậ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ính nă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ặc bả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ác nề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ền tả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ột chiề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 trong quá trình sử dụng để lập trình phần mềm, ứng dụng, v.v.
1.6 Tính năng động
So với ngôn ngữ lập trình C hay C++, Java có tính linh hoạt hơn Bởi ngôn ngữ lập trình Java được thiết kế để thích ứng với nhiều môi trường phát triển khác nhau.
2 Tổng quan về JSP và Servlet2.1 Khái niệm JSP
JSP (Java server page hay Java Scripting Preprocessor - tạm dịch là “Bộ tiền xử lý văn lệnh Java”) là một công nghệ Java cho phép các nhà phát triển tạo nội dung HTML, XML hay một số định dạng khác khiến cho trang web sinh động hơn
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ột mẫu HTML trên một trang Web hoặc nó cũng có thể đến từ một applet hoặc một chương trình khách hàng HTTP tùy chỉnh.
‒ Đọc dữ liệu yêu cầu HTTP ẩn được gửi bởi khách hàng (trình duyệt) Điều này bao gồm các cookie, loại phương tiện truyền thông và các chương trình nén mà trình duyệt hiểu được, v.v
‒ Xử lý dữ liệu và tạo ra các kết quả 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 dữ liệu rõ ràng (tức là tài liệu) tới khách hàng (trình duyệt) Tài liệu này có thể được gửi bằng nhiều định dạng, bao gồm văn bản (HTML hoặc XML), nhị phân (hình ảnh GIF), Excel, v.v
‒ Gửi phản hồi HTTP ẩn cho khách hàng (trình duyệt) Điều này bao gồm nói với trình duyệt hoặc các trình khách khác loại tài liệu đang được trả về (ví dụ,
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 2023 bởi Eclipse Foundation, một tổ chức phi lợi nhuận do IBM, Google, Oracle và nhiều cô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át triể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ển cá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ần mề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ính nă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ình quan 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 đại diệ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óa ngoạ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ỗi dò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 đối vớ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í