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

THỰC TẬP TỐT NGHIỆP XÂY DỰNG WEBSITE BÁN SMARTPHONE BẰNG JAVA( FRONTEND+ BACKEND+ DATABASE)

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 (3.78 MB, 96 trang )

fzt

BỘ CƠNG THƯƠNG
TRƯỜNG ĐẠI HỌC CƠNG NGHIỆP HÀ NỘI
----------

ĐỀ TÀI:
TÌM HIỂU VỀ FRAME WORK SPRING BOOT CỦA
JAVA, ỨNG DỤNG XÂY DỰNG WEBSITE BÁN
SMARTPHONE NGÀNH KHOA HỌC MÁY TÍNH

GVHD

:

ThS. Đỗ Ngọc Sơn

Sinh Viên

:

Trần Trường Anh - 2019610624

Lớp- Khóa

:

KHMT01 – K14


2



Hà Nội, 2023

MỤC LỤC
MỤC LỤC 2
DANH MỤC HÌNH ẢNH ................................................................................ 7
LỜI CẢM ƠN ................................................................................................. 11
MỞ ĐẦU 12
1. Tổng quan tình hình nghiên cứu ................................................................. 12
2. Lý do chọn đề tài ......................................................................................... 12
3. Mục tiêu nghiên cứu.................................................................................... 13
4. Đối tượng và phạm vi nghiên cứu............................................................... 13
5. Phương pháp nghiên cứu............................................................................. 13
6. Nội dung nghiên cứu ................................................................................... 13
7. Kết quả dự kiến ........................................................................................... 14
CHƯƠNG 1: CƠ SỞ LÝ THUYẾT ............................................................... 15
1.1. Tìm hiểu về ngôn ngữ JAVA ............................................................. 15
1.1.1. Khái niệm JAVA ............................................................................ 15
1.1.2. Lịch sử hình thành các phiên bản JAVA đã ra đời ......................... 15
1.1.3. Ưu điểm của ngôn ngữ JAVA ........................................................ 16
1.1.4. Một số hạn chế của ngôn ngữ JAVA .............................................. 16
1.1.5. Ứng dụng của ngôn ngữ JAVA ...................................................... 17
1.2. Tổng quan về đề tài ............................................................................ 18
1.2.1. Mục tiêu đề tài ................................................................................ 18
1.2.2. Công cụ sử dụng ............................................................................. 19
CHƯƠNG 2: PHÂN TÍCH VÀ THIẾT KẾ HỆ THỐNG WEBSITE BÁN
SMARTPHONE .............................................................................................. 22
Thực tập tốt nghiệp



3

2.1. Yêu cầu của đề tài ................................................................................. 22
2.2. Kế hoạch triển khai thực hiện ............................................................... 22
2.2.1. Mô tả các usecase trong hệ thống ................................................... 22
1. Mô tả use case DangNhap (Đăng Nhập) .......................................... 22
2. Mô tả use case DangKy (Đăng ký) .................................................. 23
3. Mô tả use case DangXuat (Đăng xuất) ............................................. 24
4. Mơ tả use case TimKiemSP (Tìm kiếm sản phẩm) ......................... 24
5. Mô tả use case XemGioHang (XemGioHang) ................................. 25
6. Mô tả use case DatHang (Đặt Hàng) ............................................... 26
7. Mô tả use case TraCuuDonHang (Tra cứu đơn hàng) ..................... 26
8. Mô tả use case XemChiTietDonHangDaDat (Xem chi tiết đơn hàng
đã đặt).................................................................................................... 27
9. Mô tả use case ThemVaoGioHang (Thêm vào giỏ hàng) ............... 28
10. Mơ tả use case XoaSanPhamTrongGioHang (Xóa sản phẩm trong
giỏ hàng) ............................................................................................... 28
11. Mô tả use case XemDanhSachSanPhamCuaDanhMuc (Xem danh
sách sản phẩm của danh mục) .............................................................. 29
12. Mô tả use case QuanLySanPham (Quản lý sản phẩm).................. 30
13. Mô tả use case QuanLyDanhMuc (Quản lý danh mục) ................ 32
14. Mô tả use case QuanLyDonHang (Quản lý đơn hàng) ................. 33
15. Mô tả use case XemChiTietDonHangDangXuLy (Xem chi tiết đơn
hàng đang chờ xử lí) ............................................................................. 35
16. Mơ tả use case XacNhanDonHangDangXuLy (Xác nhận đơn hàng
đang chờ xử lý) ..................................................................................... 36

Thực tập tốt nghiệp



4

17. Mô tả use case XacNhanDonHangDaXuLy (Xác nhận đơn hàng đã
chờ xử lí) ............................................................................................... 36
18. Mơ tả use case XemChiTietDonHangDangGiaoHang (Xem chi tiết
đơn hàng đang giao hàng) ..................................................................... 37
2.2.2. Biểu đồ usecase chính và thứ cấp của hệ thống ............................. 39
Biểu đồ usecase chính của hệ thống .................................................... 39
Biểu đồ usecase thứ cấp ở phía Khách Hàng........................................ 40
Biểu đồ usecase thứ cấp ở phía Admin................................................. 40
2.2.3. Biểu đồ lớp phân tích và biểu đồ trình tự các usecase trong hệ thống
42
Usecase Đăng nhập ............................................................................... 42
Usecase Đăng kí.................................................................................... 43
Usecase Tìm kiếm sản phẩm ................................................................ 44
Usecase Xem giỏ hàng .......................................................................... 45
Usecase Đặt hàng .................................................................................. 46
Usecase Tra cứu đơn hàng .................................................................... 48
Usecase Xem chi tiết đơn hàng đã đặt .................................................. 49
Usecase Thêm vào giỏ hàng ................................................................. 50
Usecase Xóa sản phảm trong giỏ hàng ................................................. 52
Usecase Xem danh sách sản phẩm của danh mục ............................... 53
Usecase Quản lý sản phẩm .................................................................. 55
Usecase Quản lý danh mục ................................................................... 57
Usecase Quản lý đơn hàng.................................................................... 59
Usecase Xem chi tiết đơn hàng đang chờ xử lý................................... 61
Usecase Xác nhận đơn hàng đang chờ xử lý ........................................ 62
Thực tập tốt nghiệp



5

2.2.4. Biểu đồ lớp màn hình, biểu đồ tương tác giữa các màn hình của
usecase trong hệ thống .............................................................................. 63
Usecase Đăng nhập ............................................................................... 63
Usecase Đăng kí.................................................................................... 64
Usecase Tìm kiếm sản phẩm ................................................................ 65
Usecase Xem giỏ hàng .......................................................................... 66
Usecase Đặt hàng .................................................................................. 66
Usecase Tra cứu đơn hàng .................................................................... 67
Usecase Xem chi tiết đơn hàng đã đặt .................................................. 68
Usecase Thêm vào giỏ hàng ................................................................. 69
Usecase Xóa sản phảm trong giỏ hàng ................................................. 70
Usecase Xem danh sách sản phẩm của danh mục ................................ 72
Usecase Quản lý sản phẩm ................................................................... 72
Usecase Quản lý danh mục ................................................................... 75
Usecase Quản lý đơn hàng.................................................................... 77
Usecase Xem chi tiết đơn hàng đang chờ xử lí ................................... 78
Usecase Xác nhận đơn hàng đang chờ xử lí ......................................... 79
Usecase Xác nhận đơn hàng đã chờ xử lí ............................................. 80
2.3. Thiết kế, xây dựng một website hoàn chỉnh ......................................... 82
DangNhap (Đăng Nhập) ....................................................................... 82
DangKy (Đăng ký)............................................................................... 82
XemGioHang (XemGioHang) .............................................................. 82
DatHang (Đặt Hàng) ............................................................................ 83
TraCuuDonHang (Tra cứu đơn hàng) ................................................. 83
XemChiTietDonHangDaDat (Xem chi tiết đơn hàng đã đặt) ............. 84
Thực tập tốt nghiệp



6

XemDanhSachSanPhamCuaDanhMuc (Xem danh sách sản phẩm của
danh mục).............................................................................................. 84
XoaSanPhamTrongGioHang (Xóa sản phẩm trong giỏ hàng) ............ 84
QuanLySanPham (Quản lý sản phẩm) ................................................ 85
QuanLyDanhMuc (Quản lý danh mục) ............................................... 86
QuanLyDonHang (Quản lý đơn hàng) ................................................ 87
XemChiTietDonHangDangXuLy (Xem chi tiết đơn hàng đang xử lý)
............................................................................................................... 89
ThemVaoGioHang (Thêm vào giỏ hàng) ............................................ 89
XacNhanDonHangDaXuLy (Xác nhận đơn hàng đã chờ xử lí).......... 89
XacNhanDonHangDangXuLy (Xác nhận đơn hàng đang chờ xử lí).. 90
XemChiTietDonHangDangGiaoHang (Xem chi tiết đơn hàng đang
giao hàng).............................................................................................. 90
2.4. Cơ sở dữ liệu ......................................................................................... 91
CHƯƠNG 3: KẾT QUẢ ĐẠT ĐƯỢC ........................................................... 93
3.1. Kết quả đạt được ................................................................................... 93
3.2. Tính khả thi của đề tài nghiên cứu, những thuận lợi, khó khăn .......... 93
3.2.1. Tính khả thi ..................................................................................... 93
3.2.2. Thuận lợi trong q trình thực hiện bài báo cáo ............................. 94
3.2.3. Khó khăn trong quá trình thực hiện báo cáo .................................. 94
KẾT LUẬN VÀ KIẾN NGHỊ......................................................................... 95
1. Kết luận .................................................................................................... 95
2. Kiến nghị .................................................................................................. 95
TÀI LIỆU THAM KHẢO ............................................................................... 96

Thực tập tốt nghiệp



7

DANH MỤC HÌNH ẢNH
Hình 1: Biểu đồ usecase chính của hệ thống .................................................. 39
Hình 2: Biểu đồ usecase thứ cấp ở phía Khách Hàng ..................................... 40
Hình 3: Biểu đồ usecase thứ cấp ở phía Admin .............................................. 41
Hình 4: Biểu đồ lớp phân tích usecase Đăng nhập ......................................... 42
Hình 5: Biểu đồ trình tự usecase Đăng nhập .................................................. 42
Hình 6: Biểu đồ lớp phân tích usecase Đăng kí .............................................. 43
Hình 7: Biểu đồ trình tự usecase Đăng kí ....................................................... 43
Hình 8: Biểu đồ lớp phân tích usecase Tìm kiếm sản phẩm ........................... 44
Hình 9: Biểu đồ trình tự usecase Tìm kiếm sản phẩm .................................... 44
Hình 10: Biểu đồ lớp phân tích usecase Xem giỏ hàng .................................. 45
Hình 11: Biểu đồ trình tự usecase Xem giỏ hàng ........................................... 46
Hình 12: Biểu đồ lớp phân tích usecase Đặt hàng .......................................... 47
Hình 13: Biểu đồ trình tự usecase Đặt hàng ................................................... 48
Hình 14: Biểu đồ lớp phân tích usecase Tra cứu đơn hàng ............................ 48
Hình 15: Biểu đồ trình tự usecase Tra cứu đơn hàng ..................................... 49
Hình 16: Biểu đồ lớp phân tích usecase Xem chi tiết đơn hàng đã đặt .......... 49
Hình 17: Biểu đồ trình tự usecase Xem chi tiết đơn hàng đã đặt ................... 50
Hình 18: Biểu đồ lớp phân tích usecase Thêm vào giỏ hàng.......................... 50
Hình 19: Biểu đồ trình tự usecase Thêm vào giỏ hàng ................................... 51
Hình 20: Biểu đồ lớp phân tích usecase Xóa sản phẩm trong giỏ hàng ......... 52
Hình 21: Biểu đồ trình tự usecase Xóa sản phẩm trong giỏ hàng .................. 52
Hình 22: Biểu đồ lớp phân tích usecase Xem danh sách sản phẩm của danh
mục .................................................................................................................. 53
Hình 23: Biểu đồ trình tự usecase Xem danh sách sản phẩm của danh mục.. 54
Hình 24: Biểu đồ lớp phân tích usecase Quản lý sản phẩm............................ 55
Hình 25: Biểu đồ lớp trình tự usecase Quản lý sản phẩm............................... 56
Hình 26: Biểu đồ lớp phân tích usecase Quản lý danh mục ........................... 57

Hình 27: Biểu đồ trình tự usecase Quản lý danh mục .................................... 59
Thực tập tốt nghiệp


8

Hình 28: Biểu đồ lớp phân tích usecase Quản lý đơn hàng ............................ 59
Hình 29: Biểu đồ trình tự usecase Quản lý đơn hàng ..................................... 60
Hình 30: Biểu đồ lớp phân tích usecase Xem chi tiết đơn hàng đang chờ xử lý
......................................................................................................................... 61
Hình 31: Biểu đồ trình tự usecase Xem chi tiết đơn hàng đang chờ xử lý ..... 61
Hình 32: Biểu đồ lớp phân tích usecase Xác nhận đơn hàng đang chờ xử lý 62
Hình 33: Biểu đồ trình tự usecase Xác nhận đơn hàng đang chờ xử lý.......... 63
Hình 34: Biểu đồ lớp màn hình usecase Đăng nhập ....................................... 63
Hình 35: Biểu đồ tương tác giữa các màn hình usecase Đăng nhập............... 64
Hình 36: Biểu đồ lớp màn hình usecase Đăng kí ............................................ 64
Hình 37: Biểu đồ tương tác giữa các màn hình usecase Đăng kí ................... 65
Hình 38: Biểu đồ lớp màn hình usecase Tìm kiếm sản phẩm ........................ 65
Hình 39: Biểu đồ tương tác giữa các màn hình usecase Tìm kiếm sản phẩm 66
Hình 40: Biểu đồ lớp màn hình usecase Xem giỏ hàng .................................. 66
Hình 41: Biểu đồ tương tác giữa các màn hình usecase Xem giỏ hàng ......... 66
Hình 42: Biểu đồ lớp màn hình usecase Đặt hàng .......................................... 67
Hình 43: Biểu đồ tương tác giữa các màn hình usecase Đặt hàng.................. 67
Hình 44: Biểu đồ lớp màn hình usecase Tra cứu đơn hàng ............................ 68
Hình 45: Biểu đồ tương tác giữa các màn hình usecase Tra cứu đơn hàng.... 68
Hình 46: Biểu đồ lớp màn hình usecase Xem chi tiết đơn hàng đã đặt .......... 69
Hình 47: Biểu đồ tương tác giữa các màn hình usecase Xem chi tiết đơn hàng
đã đặt ............................................................................................................... 69
Hình 48: Biểu đồ lớp màn hình usecase Thêm vào giỏ hàng ......................... 70
Hình 49: Biểu đồ tương tác giữa các màn hình usecase Thêm vào giỏ hàng . 70

Hình 50: Biểu đồ lớp màn hình usecase Xóa sản phẩm trong giỏ hàng ......... 71
Hình 51: Biểu đồ tương tác giữa màn hình usecase Xóa sản phẩm trong giỏ
hàng ................................................................................................................. 71
Hình 52: Biểu đồ lớp màn hình usecase Xem danh sách sản phẩm của danh
mục .................................................................................................................. 72
Thực tập tốt nghiệp


9

Hình 53: Biểu đồ tương tác giữa các màn hình usecase Xóa sản phẩm trong
giỏ hàng ........................................................................................................... 72
Hình 54: Biểu đồ lớp màn hình usecase Quản lý sản phẩm ........................... 73
Hình 55: Biểu đồ tương tác giữa các màn hình usecase Quản lý sản phẩm ... 74
Hình 56: Biểu đồ lớp màn hình usecase Quản lý danh mục ........................... 75
Hình 57: Biểu đồ tương tác giữa các màn hình usecase Quản lý danh mục... 76
Hình 58: Biểu đồ lớp màn hình usecase Quản lý đơn hàng ............................ 77
Hình 59: Biểu đồ tương tác giữa các màn hình usecase Quản lý đơn hàng ... 77
Hình 60: Biểu đồ lớp màn hình usecase Xem chi tiết đơn hàng đang xử lí ... 78
Hình 61: Biểu đồ tương tác giữa các màn hình usecase Xem chi tiết đơn hàng
đang xử lí ......................................................................................................... 79
Hình 62: Biểu đồ lớp màn hình usecase Xác nhận đơn hàng đang xử lí ........ 80
Hình 63: Biểu đồ tương tác giữa các màn hình usecase Xác nhận đơn hàng
đang xử lí ......................................................................................................... 80
Hình 64: Biểu đồ lớp màn hình usecase Xác nhận đơn hàng đang xử lí ........ 81
Hình 65: Biểu đồ tương tác giữa các màn hình usecase Xác nhận đơn hàng
đang xử lí ......................................................................................................... 81
Hình 66: Màn hình Đăng nhập ........................................................................ 82
Hình 67: Màn hình Đăng ký............................................................................ 82
Hình 68: Màn hình Xem giỏ hàng .................................................................. 83

Hình 69: Màn hình Đặt hàng........................................................................... 83
Hình 70: Màn hình Tra cưu đơn hàng ............................................................. 83
Hình 71: Màn hình Xem chi tiết đơn hàng đã đặt........................................... 84
Hình 72: Màn hình Xem danh sách sản phẩm của danh mục ......................... 84
Hình 73: Màn hình Xóa sản phẩm trong giỏ hàng .......................................... 85
Hình 74: Màn hình Xem danh sách sản phẩm( Admin) ................................. 85
Hình 75: Màn hình Thêm sản phẩm mới( Admin) ......................................... 86
Hình 76: Màn hình Sửa sản phẩm mới( Admin)............................................. 86
Hình 77: Màn hình Xem danh sách danh mục( Admin) ................................. 87
Thực tập tốt nghiệp


10

Hình 78: Màn hình Thêm danh sách danh mục( Admin) ............................... 87
Hình 79: Màn hình Sửa danh sách danh mục( Admin) .................................. 87
Hình 80: Màn hình Xem danh sách đơn hàng đang xử lí( Admin) ................ 88
Hình 81: Màn hình Xem danh sách đơn hàng đã xử lí( Admin) .................... 88
Hình 82: Màn hình Xem danh sách đơn hàng đang giao( Admin) ................. 88
Hình 83: Màn hình Xem danh sách đơn hàng thành cơng( Admin) ............... 89
Hình 84: Màn hình Xem chi tiết đơn hàng đang xử lí( Admin) ..................... 89
Hình 85: Màn hình Thêm vào giỏ hàng( Admin) ........................................... 89
Hình 86: Màn hình Xác nhận đơn hàng đã chờ xử lí( Admin) ....................... 90
Hình 87: Màn hình Xác nhận đơn hàng đang chờ xử lí( Admin) ................... 90
Hình 88: Màn hình Xem chi tiết đơn hàng đang giao hàng( Admin) ............. 91
Hình 89: Cơ sở dữ liệu .................................................................................... 91

Thực tập tốt nghiệp



11

LỜI CẢM ƠN
Để có thể hồn thành đề tài này, em xin gửi lời cảm ơn đến thầy cô trong
khoa Công nghệ thông tin, trường Đại học Công nghiệp Hà Nội trong thời gian
qua đã dạy dỗ, truyền đạt kiến thức quý báu đến em. Đặc biệt, em xin gửi lời
cảm ơn chân thành đến thầy Thạc sỹ Đỗ Ngọc Sơn đã tận tình chỉ bảo em trong
quá trình học tập cũng như thời gian thực hiện đề tài. Kiến thức mà thầy cơ
giảng dạy đã góp phần giúp em hoàn thành đề tài một cách tốt nhất. Hơn thế
nữa, sự nhiệt tình chỉ bảo của thầy cơ cũng như với những kiến thức thầy cô
mang đến đã giúp em tự tin và tiếp thêm đam mê cho em trên con đường học
tập vô bờ. Em cũng xin cảm ơn những thành viên trong lớp, những người bạn
đã luôn luôn ở bên cạnh và giúp đỡ em rất nhiều trong thời gian học tập.
Em thực hiện xin gửi lời chúc sức khỏe chân thành nhất đến thầy cô, chúc
thầy cô luôn luôn đạt được nhiều sức khỏe và niềm vui trên sự nghiệp cao quý.
Chúc các bạn luôn luôn đam mê trên con đường học tập đã chọn.
Em xin chân thành cảm ơn!

Thực tập tốt nghiệp


12

MỞ ĐẦU
1. Tổng quan tình hình nghiên cứu

Ngày nay, ứng dụng cơng nghệ thơng tin và việc tin học hóa được xem
là một trong những yếu tố mang tính quyết định trong hoạt động của các chính
phủ, tổ chức, cũng như của các cơng ty, nó đóng vai trị hết sức quan trọng, có
thể tạo ra những bước đột phá mạnh mẽ.

Cùng với sự phát triển không ngừng về kỹ thuật máy tính và mạng điện
tử, cơng nghệ thơng tin cũng được những cơng nghệ có đẳng cấp cao và lần
lượt chỉnh phục hết đỉnh cao này đến đỉnh cao khác. Mạng Internet là một trong
những sản phẩm có giá trị hết sức lớn lao và ngày càng trở nên một cơng cụ
khơng thể thiếu, là nền tảng chính cho sự truyền tải, trao đồi thơng tin trên tồn
cầu.
Giờ đây, mọi việc liên quan đến thông tin trở nên thật dễ dàng cho người
sử dụng: chỉ cần có một máy tính kết nối internet và một dịng dữ liệu truy tìm
thì gần như lập tức... cả thế giới về vấn đề mà bạn dang quan tâm sẽ hiện ra, có
đầy đủ thơng tin, hình ảnh và thậm chí đơi lúc có cả những âm thanh nếu bạn
cần...
Bằng internet, em đã thực hiện được nhiều công việc với tốc độ nhanh hơn
và chi phí thấp hơn nhiều so với cách thức truyền thống. Chính điều này, đã
thúc đầy sự khai sinh và phát triển của thương mại điện tử và chính phủ điện tử
trên khắp thế giới, làm biến đổi đáng kề bộ mặt văn hóa, nâng cao chất lượng
cuộc sống con người.
Trong hoạt động sản xuất, kinh doanh, giờ đây, thương mại điện tử đã
khẳng định.
2. Lý do chọn đề tài

Ngày nay, xu hướng phát triển cơng nghiêp hóa – hiện đại hóa đất nước
ngày càng được đẩy mạnh. Để có thể đáp ứng được khối cơng việc ngày càng

Thực tập tốt nghiệp


13

gia tăng, địi hỏi con người phải có phương pháp quản lý hợp lý giúp tiết kiệm
thời gian và chi phí cũng như cơng sức lao động.

Thấy những khó khăn, hạn chế trong quản lý smartphone, việc xây dựng
một website quản lý giúp người quản lý, chủ cửa hàng dễ dàng hơn trong việc
quản lý mua bán smartphone và cung cấp các thơng tin vận chuyển một cách
nhanh chóng, truy xuất dữ liệu nhanh hơn, quản lý khách hàng hợp lý là điều
vô cùng cần thiết.
Với đề tài “Xây dựng website bán smartphone ” thì phần mềm giúp quản
lý khách hàng, quản lý các sản phẩm, quản lý thông tin các đơn hàng và tài
khoản một cách nhanh chóng, chính xác.
3. Mục tiêu nghiên cứu

Mục tiêu của đề tài nhằm đi xây dựng một trang web cho phép doanh
nghiệp và khách hàng có thể tiến hành việc mua bán sản phẩm/ dịch vụ trực
tuyến.
4. Đối tượng và phạm vi nghiên cứu

- Đối tượng khách hàng mua sản phẩm di động.
- Cơng nghệ Java, Spring Boot
5. Phương pháp nghiên cứu

- Tìm hiểu phần mềm Visual Studio Code, ngôn ngữ HTML,CSS, ngôn ngữ
JavaScript.

- Tìm hiểu phần mềm Android Stdio và ngơn ngữ Java.
- Tìm hiểu các kỹ thuật code.
- Tìm hiểu cơ sở dữ liệu
- Tìm hiểu các thuật tốn.
6. Nội dung nghiên cứu

- Xác định và làm rõ các vấn đề liên quan đến đề tài.
- Khảo sát, phân tích thiết kế hệ thống cho website.

- Xây dựng website bán hàng đáp ứng đầy đủ các yêu cầu được đặt ra.
Thực tập tốt nghiệp


14

- Về phía khách hàng, đảm bảo được q trình đăng kí và đăng nhập tài
khoản, xem sản phẩm, mua bán sản phẩm một cách thuận tiện, dễ dàng sử
dụng.
7. Kết quả dự kiến

- Nắm vững các kỹ thuật code, thuật toán.
- Xây dựng thành website bán smartphone.

Thực tập tốt nghiệp


15

CHƯƠNG 1: CƠ SỞ LÝ THUYẾT
1.1. Tìm hiểu về ngơn ngữ JAVA
1.1.1. Khái niệm JAVA
• Java được khởi đầu bởi James Gosling và bạn đồng nghiệp ở Sun
MicroSystem năm 1991. Ban đầu Java được tạo ra nhằm mục đích viết phần
mềm cho các sản phẩm gia dụng, và có tên là Oak.
• Java được phát hành năm 1994, đến năm 2010 được Oracle mua lại từ
Sun MicroSystem.
• Java là một trong những ngơn ngữ lập trình hướng đối tượng. Nó được
sử dụng trong phát triển phần mềm, trang web, game hay ứng dụng trên các
thiết bị di động.

• Java được tạo ra với tiêu chí “Viết (code) một lần, thực thi khắp nơi”
(Write Once, Run Anywhere – WORA). Chương trình phần mềm viết bằng
Java có thể chạy trên mọi nền tảng (platform) khác nhau thông qua một môi
trường thực thi với điều kiện có mơi trường thực thi thích hợp hỗ trợ nền tảng
đó.
1.1.2. Lịch sử hình thành các phiên bản JAVA đã ra đời
• Java là nền tảng độc lập vì chúng ta có thể chạy mã Jav trên bất kì máy
nào mà khơng cần cài đặt bất kì phần mềm đặc biệt nào, JVM thực hiện điều
đó.
• Java là hướng đối tượng vì các lớp và đối tượng của nó.
• Java khơng sử dụng con trỏ nên rất bảo mật.
• Java có thể thực thi nhiều chương trình đồng thời, do đó có theer đạt
được đa luồng.
• Rất mạnh mẽ vì có tính năng thu gom rác, khơng sử dụng con trỏ rõ ràng,
xử lí ngoại lệ.
Thực tập tốt nghiệp


16

• Rất dễ hiểu vì là ngơn ngữ cấp cao
• Quản lý bộ nhớ hiệu quả
1.1.3. Ưu điểm của ngôn ngữ JAVA
• Java là nền tảng độc lập vì chúng ta có thể chạy mã Jav trên bất kì máy
nào mà khơng cần cài đặt bất kì phần mềm đặc biệt nào, JVM thực hiện điều
đó.
• Java là hướng đối tượng vì các lớp và đối tượng của nó.
• Java khơng sử dụng con trỏ nên rất bảo mật.
• Java có thể thực thi nhiều chương trình đồng thời, do đó có theer đạt
được đa luồng.

• Rất mạnh mẽ vì có tính năng thu gom rác, khơng sử dụng con trỏ rõ ràng,
xử lí ngoại lệ.
• Rất dễ hiểu vì là ngơn ngữ cấp cao
• Quản lý bộ nhớ hiệu quả
1.1.4. Một số hạn chế của ngôn ngữ JAVA
Mặc dù có nhiều điểm mạnh nhưng JAVA cũng sở hữu những điểm yếu
cần khắc phục:
• Java thể hiện hiệu suất kém, ngun nhân chính là do bộ thu gom rác,
cấu hình bộ nhứ đệm không hợp lệ và bế tắc giữa các quy trình.
• Có rất ít trình tạo GUI – Swing, SWT, JSF và JavaFX trong số những
trình xây dựng phổ biến hơn.
• Để viết mã thực hiện một tập hợp các hoạt động đơn giản, chúng ta có
thể phải viết những đoạn mã dài và phức tạp. So với Pyhton ta nhận thấy Python
không cần dấu chấm phẩy, dấu ngoặc đơn hoặc dấu ngoặc nhọn và có mã ngắn
hơn rất nhiều.
Thực tập tốt nghiệp


17

1.1.5. Ứng dụng của ngơn ngữ JAVA
• Các ứng dụng yêu cầu tính bảo mật cao:
- Các ứng dụng sử dụng trong giao dịch của các ngân hàng yêu cầu tính
bảo mật cao. Họ cần bảo mật tối đa thơng tin tài khoản của khách hàng. Trên
thế giới đã có các ngân hàng sử dụng Java để viết các hệ thống giao dịch điện
tử như Goldman Sachs, Citigroup, Barclays, Standard Chartered … Ngồi viết
các ứng dụng giao dịch, họ cịn sử dụng Java trong việc khác như hệ thống xác
nhận và kiểm toán, các dự án xử lý dữ liệu …
• Ứng dụng của ngơn ngữ lập trình Java:
- Ngơn ngữ lập trình Java được đánh giá là một ngơn ngữ có độ bảo mật

cao. Chính vì vậy, nó thường được sử dụng vào các ứng dụng của ngành dịch
vụ tài chính hay ngân hàng.
• Các ứng dụng cho hệ điều hành Android:
- Java hỗ trợ tối đa cho hệ điều hành Android. Vì thế ngơn ngữ lập trình
này được áp dụng rất nhiều vào các ứng dụng dành cho Android.. Số người sử
dụng Android chiếm hơn một nửa thị phần vì vậy có thể thấy, nhu cầu sử dụng
các ứng dụng là rất lớn.
- Nếu trong tay bạn đang cầm một chiếc điện thoại chạy trên hệ điều hành
Android thì đừng bất ngờ, bất cứ một ứng dụng nào trên đó cũng đều được hình
thành và phát triển trên nền tảng Java. Chính điều này đã tạo ra cơ hội lớn cho
các lập trình viên Java: nếu họ học tốt và có kỹ năng thì chắc chắn những lập
trình Java sẽ khơng bao giờ sợ thất nghiệp.
• Điện tốn đám mây
- Cũng giống như Internet vạn vật (IoT), điện toán đám mây là một miếng
bánh béo bở mà bất kỳ công ty nào cũng muốn chiếm thị phần. Java với tính
năng di động của nó sẽ là chìa khóa giúp bạn quản lý các giải pháp điện toán
đám mây. Ngồi ra, Java là ngơn ngữ lập trình đa mục đích. Nó cho phép bạn
Thực tập tốt nghiệp


18

làm việc trên ứng dụng di động, máy tính để bàn và ứng dụng đám mây. Ví dụ,
Heroku cung cấp một nền tảng đám mây sử dụng Java. Ngoài ra, có rất nhiều
PaaS giúp bạn đi sâu vào điện tốn đám mây. Cả Google Cloud Platform và
Microsoft Azure đều có các điều khoản để lưu trữ các ứng dụng Java và quản
lý chúng một cách hiệu quả.
1.2. Tổng quan về đề tài
1.2.1. Mục tiêu đề tài
Đề tài xây dựng website bán điện thoại thơng minh smartphone nhắm đền

mục tiêu có thể :
• Xây dựng một website có giao diện đẹp, thu hút và đặc biệt phải thân
thiện với người truy cập và người điều hành (Admin)
• Website cung cấp đầy đủ các chức năng, tiện ích mà một website bán
hàng cần phải có như :
o Với khách hàng truy cập vào hệ thống :
- Hiển thị các sản phẩm bán chạy của cửa hàng
- Hiển thị danh sách các sản phẩm theo từng danh mục
- Hiển thị được các thông tin chi tiết của một sản phẩm
- Hiển thị được danh sách sản phẩm của một danh mục
- Tìm kiếm sản phẩm
- Thực hiện đặt hàng cho người truy cập
- Thực hiện đăng nhập, đăng ký tài khoản cho người truy cập để tiến
hàng mua hàng.
- Theo dõi được tình trạng hàng mà khách hàng đã tiến hành thực hiện
đặt.
o Đối với người quản trị (admin)
Thực tập tốt nghiệp


19

- Có thể thực hiện đăng nhập để truy cập vào hệ thống.
- Có thể thực hiển quản lý các sản phẩm có trong hệ thống (Thêm, sửa,
xóa)
- Có thẻ thực hiện quản lý các danh mục có trong hệ thống (thêm, sửa,
xóa)
- Có thể thực hiện quản lý các đơn hàng được đặt trong hệ thống
+ Xem các đơn hàng đang chờ xử lý
+ Xem các đơn hàng đã xử lý

+ Xem các đơn hàng đang được giao
+ Xem các đơn hàng đã giao thành công
+ Thực hiện xác nhận đã đơn hàng đang chờ xử lý
+ Thực hiện xác nhận các đơn hàng đã xử lý
+ Thực hiện xem các thông tin chi tiết các đơn hàng đang chờ xử lý,
đang giao.
1.2.2. Cơng cụ sử dụng
• Spring Boot 5.0: Spring boot là 1 module của Spring Framework, cung
cấp tính năng RAD (Rapid Application Development) – Phát triển ứng dụng
nhanh. Spring Boot được dùng để tạo các ứng dụng độc lập dựa trên Spring.
o Ưu điểm:
- Có các tính năng của Spring Framework.
- Tạo ứng dụng độc lập, có thể chạy bằng java-jar ( java web )
- Nhúng trực tiếp các ứng dụng server
- Dễ dàng tích hợp các module: Spring MVC
- Không yêu cầu XML config…

Thực tập tốt nghiệp


20

- Cung cấp nhiều plugin: Maven …
- Cung cấp các HTTPs servers: Tomcat …
o Nhược điểm:
- Thiếu kiểm soát: chủ yếu dự thuộc vào dependences.
- Khơng thích hợp cho các dự án quy mơ lớn (theo nhiều nhà phát
triển).
• Postman 9.24.0: Postman là 1 ứng dụng REST Client, dùng để thực hiện
test, gửi các request, API mà không cần sử dụng browser.

• Bootstrap 5: Là một framework miễn phí, mã nguồn mở dựa trên
HTML, CSS và Javascript. Bootstrap bao gồm các thành phần cơ bản có sẵn:
forms, button …
• Rationnal Rose 7.0: Là một lập trình hướng đối tượng.
o Rational rose thống nhất ngơn ngữ mơ hình hóa (UML) cơng cụ cho
các ứng dụng phần mềm
o Tạo ra mơ hình ứng dụng phần mềm trực quan theo các nguyên tắc
hướng đối tượng ( usecase, actor… )
• Balsamiq Mockup 3:
o Là một phần mềm giúp tạo các design mockup, lên ý tưởng cho dự
án thực tế.
o Thiết kế các màn hình, hướng đi, chi tiết các thành phần có trong
giao diện của website
• Github:
o Là một hệ thống quản lý dự án và phiên bản code, hoạt động như một
cộng đồng mạng mã nguồn mở cho lập trình viên.
o Quản lí, thao tác với source code dễ dàng trong team.
Thực tập tốt nghiệp


21

Thực tập tốt nghiệp


22

CHƯƠNG 2: PHÂN TÍCH VÀ THIẾT KẾ HỆ THỐNG
WEBSITE BÁN SMARTPHONE
2.1. Yêu cầu của đề tài

Website có đầy đủ các chức năng của một trang web bán hàng .Có đầy đủ
chức năng cho cả Khách hàng truy cập và người quản trị (admin) sử
dụng.Website chưa toàn bộ 17 usecase được chia ra cho cả Khách hàng truy
cập sử dụng và người quản trị (admin) sử dụng
2.2. Kế hoạch triển khai thực hiện
2.2.1. Mô tả các usecase trong hệ thống
1. Mô tả use case DangNhap (Đăng Nhập)
• Mơ tả vắn tắt : Use case cho phép người dùng truy cập vào hệ thống.


Luồng sự kiện:
o Luồng cơ bản:
1. Use case bắt đầu khi người dùng nhấn vào “ Đăng nhập “
trên menu cơng cụ, hệ thống sẽ hiện thị màn hình đăng nhập.
2. Hệ thống yêu cầu người dùng nhập email và mật khẩu và
kích vào “ Đăng nhập “.
3. Hệ thống sẽ kiểm tra email và mật khẩu trong bảng User
(id, email, fullname, dob, password, role_Id, address, status,
isConfirmed, captcha) và hiện thị màn hình chức năng theo
đúng phân quyền của tài khoản nhập vào và use case kết
thúc.
o Luồng rẽ nhánh :
1. Tại bước 2, nếu người dùng nhập sai tài khoản hoặc mật
khẩu thì hệ thống sẽ hiện thị thông báo lỗi “Tên đăng nhập
hoặc mật khẩu không đúng”. Người dùng có thể nhập lại và
nhấn vào đăng nhập và use case sẽ kết thúc.
Thực tập tốt nghiệp


23


2. Tại bất cứ bước nào nếu bị mất kết nối với CSDL thì hệ
thống sẽ thơng báo “Lỗi kết nối” và use case kết thúc.
• Yêu cầu đặc biệt: Khơng
• Tiền điều kiện: Khơng
• Hậu điều kiện:
Sau khi thực hiện use thành công, người dùng phải truy cập được vào
hệ thống và có thể thực hiện các chức năng khác.
• Điểm mở rộng: Đăng ký
2. Mơ tả use case DangKy (Đăng ký)
• Mơ tả vắn tắt : Use case cho phép người dùng tạo tài khoản truy cập
cho riêng mình.
• Luồng sự kiện:
o Luồng cơ bản:
1. Usecase bắt đầu khi người dùng nhấn vào “Đăng ký” trên
menu công cụ, hệ thống sẽ hiện thị màn hình đăng ký.
2. Hệ thống yêu cầu người dùng nhập các thông tin trên màn
hình và kích vào “Đăng ký”.
3. Hệ thống sẽ thực hiện thêm tài khoản mới vào bảng User
(id, email, fullname, dob, password, role_Id, address, status,
isConfirmed, captcha), hệ thống hiển thị màn hình đăng
nhập và use case kết thúc.
o Luồng rẽ nhánh :
1. Tại bước 2, nếu người dùng nhập sai sai một số thong tin
thì hệ thống sẽ hiện thị thơng báo lỗi . Người dùng có thể
nhập lại và nhấn vào đăng ký và use case sẽ kết thúc.
2. Tại bất cứ bước nào nếu bị mất kết nối với CSDL thì hệ
thống sẽ thơng báo “Lỗi kết nối” và use case kết thúc.
• u cầu đặc biệt: Khơng
• Tiền điều kiện: Không

Thực tập tốt nghiệp


24

• Hậu điều kiện:
Sau khi thực hiện use thành cơng, người dùng có thể sử dụng tài khoản
vừa tạo để truy cập được vào hệ thống và có thể thực hiện các chức năng
khác.
• Điểm mở rộng: Khơng
3. Mơ tả use case DangXuat (Đăng xuất)
• Mơ tả vắn tắt : Use case cho phép người dùng truy cập thực hiện đăng
xuất khỏi hệ thống.
• Luồng sự kiện:
o Luồng cơ bản:
1. Usecase bắt đầu khi người truy cập thực hiện kích vào nút
“Đăng xuất” trên menu.
2. Hệ thống thực hiện chuyển màn hình về màn hình đăng
nhập lúc đầu.
o Luồng rẽ nhánh :
Tại bất cứ bước nào nếu bị mất kết nối với CSDL thì hệ thống
sẽ thơng báo “Lỗi kết nối” và use case kết thúc.
• Yêu cầu đặc biệt: Khơng
• Tiền điều kiện: Đăng nhập để thực hiện usecase này
• Hậu điều kiện: Khơng
• Điểm mở rộng: Khơng
4. Mơ tả use case TimKiemSP (Tìm kiếm sản phẩm)
• Mơ tả vắn tắt : Use case cho phép khách hàng tìm kiếm sản phẩm.
• Luồng sự kiện:
o Luồng cơ bản:

▪ Usecase bắt đầu khi người dùng nhập tên sản phẩm trên
thanh tìm kiếm và kích vào nút “tìm kiếm”.
▪ Hệ thống thực hiện tìm kiếm các sản phẩm có tên của người
dùng nhập vào.
Thực tập tốt nghiệp


25

▪ Hệ thống đưa ra màn hình tên các sản phẩm tìm được.
▪ Usecase kết thúc.
o Luồng rẽ nhánh :
▪ Nếu khơng có sản phẩm có tên chứa từ cần tìm kiếm thì hệ
thống khơng hiển thị và usecase kết thúc.
▪ Tại bất cứ bước nào nếu bị mất kết nối với CSDL thì hệ
thống sẽ thơng báo “Lỗi kết nối” và use case kết thúc.
• Yêu cầu đặc biệt: Khơng
• Tiền điều kiện: Khơng
• Hậu điều kiện: Khơng
• Điểm mở rộng: Khơng
5. Mơ tả use case XemGioHang (XemGioHang)
• Mơ tả vắn tắt : Use case cho phép người dùng có thể thực hiện xem các
sản phẩm mà mình đã thực hiện thêm vào giỏ hàng.
• Luồng sự kiện:
o Luồng cơ bản:
1. Use case bắt đầu khi người dùng nhấn vào “ Giỏ hàng “ trên
menu công cụ.
2. Hệ thống sẽ hiển thị các sản phẩm mà người truy cập đã
thực hiện thêm vào giỏ hàng gồm các thông tin : Tên sản
phẩm, hình ảnh, đơn giá, Số lượng và các thông tin của

người truy cập như tên tài khoản, địa chỉ . Hệ thống hiển thị
thêm một số thông tin như : Tổng tiền của đơn hàng, số
lượng đơn hàng.
3. Use case kết thúc.
o Luồng rẽ nhánh :
Tại bất cứ bước nào nếu bị mất kết nối với CSDL thì hệ thống sẽ
thơng báo “Lỗi kết nối” và use case kết thúc.
• u cầu đặc biệt: Khơng
Thực tập tốt nghiệp


×