Hồ Chí Minh, tháng 08 năm 2021BỘ TÀI CHÍNH TRƯỜNG ĐẠI HỌC TÀI CHÍNH-MARKETING KHOA CÔNG NGHỆ THÔNG TIN ĐỒ ÁN MÔN HỌC LẬP TRÌNH JAVA Đề Tài: CHƯƠNG TRÌNH QUẢN LÝ SÁCH TẠI NHÀ SÁCH FAHAS
Trang 1BỘ TÀI CHÍNH TRƯỜNG ĐẠI HỌC TÀI CHÍNH-MARKETING
KHOA CÔNG NGHỆ THÔNG TIN
ĐỒ ÁN MÔN HỌC LẬP TRÌNH JAVA
Đề Tài: CHƯƠNG TRÌNH QUẢN LÝ SÁCH
Trang 2TP Hồ Chí Minh, tháng 08 năm 2021
BỘ TÀI CHÍNH TRƯỜNG ĐẠI HỌC TÀI CHÍNH-MARKETING
KHOA CÔNG NGHỆ THÔNG TIN
ĐỒ ÁN MÔN HỌC LẬP TRÌNH JAVA
Đề Tài: CHƯƠNG TRÌNH QUẢN LÝ SÁCH
TẠI NHÀ SÁCH FAHASA
Giảng viên hướng dẫn: Thầy Hà Thanh Liêm Sinh viên thực hiện 1: Đinh Huỳnh Y Pha MSSV: 1921006797
Sinh viên thực hiện 2: Nguyễn Hoàng Thy MSSV:
Lớp học phần:
Trang 3TP Hồ Chí Minh, tháng 4 năm 2022
LỜI CẢM ƠN
Trước hết, nhóm em xin bày tỏ tình cảm và lòng biết ơn của em đối với thầy Hà Thanh Liêm - Giảng viên hướng dẫn môn lập trình Java Người đã tận tình từng bước hướng dẫn, giúp đỡ tụi em trong quá trình thực hiện đồ án của mình.
Chúng em xin chân thành cảm ơn các Thầy Cô trong khoa Công nghệ thông tin của trường Đại học Tài Chính Marketing đã dìu dắt, dạy dỗ em cả kiến thức chuyên môn và tinh thần học tập để em có đủ kiến thức để hoàn thành bài đồ án môn học của mình Đồng thời em cũng bày tỏ lòng cảm ơn của mình đối với các anh chị khóa trên đã hết lòng chỉ bảo em để hoàn thiện đồ án một cách tốt nhất.
Tuy có nhiều cố gắng trong quá trình thực hiện đồ án môn học nhưng không thể tránh khỏi những thiếu sót, em mong được sự góp ý quý báu của thầy và các bạn để có được kết quả được tốt nhất.
Cuối cùng, em xin kính thầy cô và toàn thể ban lãnh đạo nhà trường lời chúc sức khỏe và thành công trong công việc.
TP Hồ Chí Minh, ngày … Tháng 4 năm 2022
Sinh viên thực hiện Đinh Huỳnh Y Pha Nguyễn Hoàng Thy
Trang 4NHẬN XÉT ĐÁNH GIÁ CỦA GIẢNG VIÊN 1
- Điểm số:
- Điểm chữ:
Tp Hồ Chí Minh, ngày … tháng 4 năm 2022
Giảng viên
Hà Thanh Liêm
Trang 5NHẬN XÉT ĐÁNH GIÁ CỦA GIẢNG VIÊN 2
- Điểm số:
- Điểm chữ:
Tp Hồ Chí Minh, ngày … tháng 4 năm 2022
Giảng viên
(Ký và ghi rõ họ tên)
Trang 6DANH MỤC TỪ VIẾT TẮT
4 IDE Integrated Development Environment
6 API Application Programming Interface
10 RDBMS Relational Database Management System
12 TP HCM Thành phố Hồ Chí Minh
i
Trang 7DANH MỤC THUẬT NGỮ ANH – VIỆT
1 Object Oriented Programming Ngôn ngữ hướng đối tượng
2 Java Virtual Machine Máy ảo Java
3 Integrated Development
Environment
Môi trường phát triển tích hợp
4 Database Management System Hệ quản trị cơ sở dữ liệu
5 Application Programming Interface Giao diện lập trình ứng dụng
8 Structured Query Language Ngôn ngữ truy vấn có cấu trúc
10 Hypertext Preprocessor Ngôn ngữ lập trình dạng kịch bản
11 Relational Database Management
System
Hệ quản trị cơ sở dữ liệu quan hệ
12 Model View Controller Mẫu kiến trúc phần mềm
Trang 8DANH MỤC HÌNH
Hình 1-1 Logo nhà sách FAHASA 1
Hình 1-2 Hình ảnh nhà sách FAHASA quận 9 2
Hình 2-7 Phân cấp các lớp trong Java swing 11
Hình 2-8 Các thành phần JDBC 14
Hình 2-9 Minh họa bước 1 15
Hình 2-10 Thêm thư viện 16
Hình 2-11 Chọn file kết nối 16
Hình 2-12 Kết quả bước 2 16
Hình 2-13 Đoạn code kết nối CSDL 17
Hình 2-14 Giao diện phần mềm Netbeans IDE 12.0 18
Hình 3-1 Sơ đồ diagram 27
Hình 3-3 Phương thức getConnection () 28
Hình 3-4 Định nghĩa thuộc tính lớp ThongTinDangNhap 29
Hình 3-5 Định nghĩa thuộc tính lớp ThongTinTacGia 30
Hình 3-6 Định nghĩa thuộc tính lớp ThongTinLoaiSach 31
Hình 3-7 Định nghĩa thuộc tính lớp ThongTinNXB 32
Hình 3-8 Định nghĩa thuộc tính trong lớp ThongTinSach 33
Hình 3-9 Định nghĩa thuộc tính lớp ThongTinPhieuNhap 34
Hình 3-10 Định nghĩa thuộc tính lớp ThongTinPhieuXuat 36
Hình 3-11 Định nghĩa thuộc tính lớp ThongTinCTPN 37
Hình 3-12 Định nghĩa thuộc tính lớp ThongTinCTPX 38
Hình 3-13 Định nghĩa thuộc tính lớp ThongTinSach 39
Hình 4-1 Giao diện đăng nhập 41
Hình 4-2 Tên đăng nhập hoặc mật khẩu không đúng 41
Hình 4-3 Đăng nhập thành công 41
Hình 4-4 Thoát khỏi hệ thống 42
Hình 4-5 Khai báo thư viện Form đăng nhập 42
Hình 4-6 Code chèn hình 42
Hình 4-7 Code trong nút lệnh đăng nhập 42
iii
Trang 9Hình 4-8 Code cho nút lệnh đổi mật khẩu 42
Hình 4-9 Code cho nút lệnh thoát 43
Hình 4-10 Code cho jcheckbox "Hiển thị mật khẩu" 43
Hình 4-11 Giao diện Form đổi mật khẩu 43
Hình 4-12 Đổi mật khẩu thành công 44
Hình 4-13 Thoát khỏi giao diện đổi mật khẩu 44
Hình 4-14 Code khai báo thư viện 45
Hình 4-15 Code chèn hình ảnh 45
Hình 4-16 Code cho chức năng "Đổi" 45
Hình 4-17 Code cho chức năng "Thoat" 45
Hình 4-18 Form giao diện chính 45
Hình 4-19 Xác nhận truy cập 46
Hình 4-20 Xác nhận đăng xuất 46
Hình 4-21 Khai báo thư viện form chính 47
Hình 4-22 Code cho nút đăng xuất 47
Hình 4-23 Code chèn hình 47
Hình 4-24 Button "QUẢN LÝ SÁCH" 47
Hình 4-25 Button "QUẢN LÝ NHẬP SÁCH" 47
Hình 4-26 Button "QUẢN LÝ XUẤT SÁCH" 47
Hình 4-27 Button "QUẢN LÝ NHÂN VIÊN" 47
Hình 4-28 Khai báo thư viện quản lý tác giả 48
Hình 4-29 Quay lại trang chính 48
Hình 4-30 Giao diện form quản lý tác giả 49
Hình 4-31 Tìm kiếm tác giả 50
Hình 4-32 Tìm kiếm theo mã tác giả 50
Hình 4-33 Tìm kiếm theo họ tên tác giả 51
Hình 4-34 Tìm kiếm theo địa chỉ 51
Hình 4-35 Code cho chức năng “Thêm” 51
Hình 4-36 Code cho chức năng " Xóa" 51
Hình 4-37 Code cho chức năng "Sửa" 51
Hình 4-38 Code cho chức năng "Tìm kiếm" 52
iv
Trang 10Hình 4-39 Phương thức timkiem () 52
Hình 4-40 Code cho chức năng "Reset" 52
Hình 4-41 Form quản lý nhà xuất bản 52
Hình 4-42 Tìm kiếm nhà xuất bản 53
Hình 4-43 Tìm kiếm theo mã nhà xuất bản 54
Hình 4-44 Tìm kiếm theo tên nhà xuất bản 54
Hình 4-45 Tìm kiếm theo địa chỉ nhà xuất bản 54
Hình 4-46 Code cho chức năng "Thêm" 54
Hình 4-47 Code cho chức năng "Xóa" 54
Hình 4-48 Code cho chức năng “Sửa” 55
Hình 4-49 Code cho chức năng "Tìm kiếm" 55
Hình 4-50 Code cho phương thức tim () 55
Hình 4-51 Code cho chức năng "Reset" 55
Hình 4-52 Form giao diện quản lý loại sách 55
Hình 4-53 Tìm kiếm loại sách 57
Hình 4-54 Tìm kiếm theo mã loại sách 57
Hình 4-55 Tìm kiếm theo tên loại sách 57
Hình 4-56 Code cho chức năng "Thêm" 57
Hình 4-57 Code cho chức năng "Xóa" 58
Hình 4-58 Code cho chức năng “Sửa” 58
Hình 4-59 Code cho chức năng "Tìm kiếm" 58
Hình 4-60 Code cho phương thức timkiemls () 58
Hình 4-61 Code cho chức năng "Reset" 58
Hình 4-62 Form giao diện quản lý thông tin sách 58
Hình 4-63 Tìm kiếm sách 60
Hình 4-64 Tìm kiếm theo mã sách 60
Hình 4-65 Tìm kiếm theo tên sách 60
Hình 4-66 Tìm kiếm theo mã nhà xuất bản 60
Hình 4-67 Tìm kiếm theo mã tác giả 60
Hình 4-68 Tìm kiếm theo mã loại sách 61
Hình 4-69 Code cho chức năng "Thêm" 61
v
Trang 11Hình 4-70 Code cho chức năng "Xóa" 61
Hình 4-71 Code cho chức năng “Sửa” 61
Hình 4-72 Code cho chức năng "Tìm kiếm" 61
Hình 4-73 Code cho phương thức timKiem () 61
Hình 4-74 Code cho chức năng "Reset" 62
Hình 4-75 Khai báo thư viện “Quản lý xuất sách” 62
Hình 4-76 Quay lại trang chủ 62
Hình 4-77 Giao diện Form phiếu xuất kho 62
Hình 4-78 Tìm kiếm phiếu xuất 64
Hình 4-79 Tìm kiếm theo mã phiếu xuất 64
Hình 4-80 Tìm kiếm theo mã nhân viên 64
Hình 4-81 Tìm kiếm theo số lượng 65
Hình 4-82 Tìm kiếm theo ngày 65
Hình 4-83 Tìm kiếm theo tháng 65
Hình 4-84 Code cho chức năng "Thêm" 65
Hình 4-85 Code cho chức năng "Xóa" 65
Hình 4-86 Code cho chức năng "Sửa" 65
Hình 4-87 Code cho chức năng "Tìm kiếm" 66
Hình 4-88 Code cho phương thức timkiem1 () 66
Hình 4-89 Code cho chức năng "Reset" 66
Hình 4-90 Form giao diện CT phiếu xuất 66
Hình 4-91 Tìm kiếm chi tiết phiếu xuất 68
Hình 4-92 Tìm kiếm theo sách 68
Hình 4-93 Tìm kiếm theo mã phiếu xuất 68
Hình 4-94 Tìm kiếm theo số lượng 68
Hình 4-95 Code cho chức năng "Thêm" 68
Hình 4-96 Code cho chức năng "Xóa" 69
Hình 4-97 Code cho chức năng "Sửa" 69
Hình 4-98 Code cho chức năng "Tìm kiếm" 69
Hình 4-99 Code cho phương thức timkiem () 69
Hình 4-100 Code cho chức năng "Reset" 69
vi
Trang 12Hình 4-101 Khai báo thư viện “Quản lý nhập sách” 70
Hình 4-102 Code cho chức năng quay lại trang chủ 70
Hình 4-103 Giao diện Form quản lý nhập sách 70
Hình 4-104 Tìm kiếm phiếu nhập 72
Hình 4-105 Tìm kiếm theo mã phiếu nhập 72
Hình 4-106 Tìm kiếm theo mã nhân viên 72
Hình 4-107 Tìm kiếm theo số lượng 73
Hình 4-108 Code cho chức năng "Thêm" 73
Hình 4-109 Code cho chức năng "Xóa" 73
Hình 4-110 Code cho chức năng "Sửa" 73
Hình 4-111 Code cho chức năng “Tìm kiếm” 73
Hình 4-112 Code cho phương thức timkiem1 () 73
Hình 4-113 Code cho chức năng "Reset" 74
Hình 4-114 Giao diện Form quản lý chi tiết phiếu nhập sách 74
Hình 4-115 Tìm kiếm chi tiết phiếu nhập 75
Hình 4-116 Tìm kiếm theo mã sách 76
Hình 4-117 Tìm kiếm theo mã phiếu nhập 76
Hình 4-118 Tìm kiếm theo số lượng 76
Hình 4-119 Code cho chức năng "Thêm" 76
Hình 4-120 Code cho chức năng "Xóa" 76
Hình 4-121 Code cho chức năng "Sửa" 76
Hình 4-122 Code cho chức năng "Tìm kiếm" 77
Hình 4-123 Code cho phương thức timkiem () 77
Hình 4-124 Code cho chức năng "Reset" 77
Hình 4-125 Khai báo thư viện 77
Hình 4-126 Code cho chức năng “Quay lại trang chủ” 77
Hình 4-127 Giao diện Form quản lý nhân viên 78
Hình 4-128 Tìm kiếm nhân viên 79
Hình 4-129 Tìm kiếm theo mã nhân viên 80
Hình 4-130 Tìm kiếm theo họ tên 80
Hình 4-131 Tìm kiếm theo giới tính 80
vii
Trang 13Hình 4-132 Code chức năng "Thêm" 80
Hình 4-133 Code chức năng "Xóa" 80
Hình 4-134 Code chức năng "Sửa" 80
Hình 4-135 Code chức năng "Tìm kiếm" 81
Hình 4-136 Code cho phương thức timkiem () 81
Hình 4-137 Code chức năng "Reset" 81
viii
Trang 14DANH MỤC BẢNG
Bảng 2-1 Điểm khác nhau giữa AWT và Swing 11
Bảng 3-1 Bảng NhanVien 23
Bảng 3-2 Bảng NhaXuatBan 24
Bảng 3-3 Bảng TacGia 24
Bảng 3-4 Bảng LoaiSach 25
Bảng 3-5 Bảng Sach 25
Bảng 3-6 Bảng PhieuNhapSach 25
Bảng 3-7 Bảng PhieuXuatSach 26
Bảng 3-8 Bảng CTPNS 26
Bảng 3-9 Bảng CTPXS 26
Bảng 3-10 Bảng thuộc tính lớp KetNoi 28
Bảng 3-11 Bảng thuộc tính lớp ThongTinDangNhap 29
Bảng 3-12 Thuộc tính lớp ThongTinTacGia 29
Bảng 3-13 Bảng thuộc tính lớp ThongTinLoaiSach 30
Bảng 3-14 Thuộc tính lớp ThongTinNXB 32
Bảng 3-15 Bảng thuộc tính lớp ThongTinSach 33
Bảng 3-16 Thuộc tính lớp ThongTinPhieuNhap 34
Bảng 3-17 Thuộc tính lớp ThongTinPhieuXuat 35
Bảng 3-18 Thuộc tính lớp ThongTinCTPN 37
Bảng 3-19 Thuộc tính lớp ThongTinCTPX 38
Bảng 3-20 Bảng thuộc tính lớp ThongTinNhanVien 39
ix
Trang 15MỤC LỤC
DANH MỤC TỪ VIẾT TẮT I DANH MỤC THUẬT NGỮ ANH – VIỆT II DANH MỤC HÌNH III DANH MỤC BẢNG IX MỤC LỤC X
CHƯƠNG 1: GIỚI THIỆU TỔNG QUAN 1
1.1 G IỚI THIỆU NHÀ SÁCH FAHASA 1
1.2 T ÍNH CẤP THIẾT CỦA ĐỀ TÀI 2
1.3 M ỤC TIÊU ĐỀ TÀI 3
1.4 N ỘI DUNG ĐỀ TÀI 3
1.5 P HƯƠNG PHÁP NGHIÊN CỨU 3
1.6 Đ ỐI TƯỢNG VÀ PHẠM VI NGHIÊN CỨU 4
CHƯƠNG 2: CƠ SỞ LÝ THUYẾT 4
2.1 T ỔNG QUAN VỀ NGÔN NGỮ AVA J 4
2.1.1 Giới thiệu về ngôn ngữ 4
2.1.1.1 Lịch sử ngôn ngữ Java 4
2.1.1.2 Khái niệm 5
2.1.1.3 Đặc điểm 5
2.1.1.4 Ưu – nhược điểm 6
2.1.2 Hướng đối tượng trong Java 7
2.1.2.1 Các khái niệm về hướng đối tượng 7
2.1.3 Giới thiệu về Java Swing 10
2.1.3.1 Khái niệm 10
2.1.3.2 Phân cấp các lớp trong java swing 11
2.1.3.3 Các thành phần cơ bản 12
x
Trang 162.1.4 Java JDBC 13
2.1.4.1 Khái niệm 13
2.1.4.2 Các thành phần của JDBC 13
2.1.4.3 Cách kết nối CSDL MySQL 15
2.2 C ÁC CÔNG CỤ SỬ DỤNG KHÁC 17
2.2.1 Tổng quan về Netbeans IDE 17
2.2.1.1 Khái niệm 17
2.2.1.2 Chức năng 18
2.2.1.3 Ưu – nhược điểm 18
2.2.2 Tổng quan về Hệ quản trị CSDL MySQL 19
2.2.2.1 Giới thiệu 19
2.2.2.2 Đặc điểm 19
2.2.2.3 Ưu điểm và nhược điểm 20
CHƯƠNG 3: PHÂN TÍCH VÀ THIẾT KẾ CHƯƠNG TRÌNH 22
3.1 P HÂN TÍCH THIẾT KẾ HỆ THỐNG 22
3.1.1 Mô tả hệ thống 22
3.1.2 Giới hạn phạm vi hệ thống 22
3.2 G IỚI THIỆU VỀ CSDL 23
3.2.1 Giới thiệu các bảng 23
3.2.1.1 Bảng NhanVien (Nhân viên) 23
3.2.1.2 Bảng NhaXuatBan (Nhà xuất bản) 23
3.2.1.3 Bảng TacGia (Tác giả) 24
3.2.1.4 Bảng LoaiSach (Loại sách) 24
3.2.1.5 Bảng Sach (Sách) 25
3.2.1.6 Bảng PhieuNhapSach (Phiếu nhập sách) 25
3.2.1.7 Bảng PhieuXuatSach (Phiếu xuất sách) 26
3.2.1.8 Bảng CTPNS (Chi tiết phiếu nhập sách) 26
3.2.1.9 Bảng CTPXS (Chi tiết phiếu xuất sách) 26
3.2.2 Sơ đồ diagram 27
3.3 T HIẾT KẾ CÁC LỚP 27
xi
Trang 173.3.1 Thiết kế các lớp 27
3.3.1.1 Lớp Kết nối (KetNoi) 27
3.3.1.2 Lớp Đăng nhập (ThongTinDangNhap) 28
3.3.1.3 Lớp Thông tin tác giả (ThongTinTacGia) 29
3.3.1.4 Lớp Thông tin loại sách (ThongTinLoaiSach) 30
3.3.1.5 Lớp Thông tin nhà xuất bản (ThongTinNXB) 31
3.3.1.6 Lớp Thông sách (ThongTinSach) 33
3.3.1.7 Lớp Thông tin phiếu nhập (ThongTinPhieuNhap) 34
3.3.1.8 Lớp Thông tin phiếu xuất (ThongTinPhieuXuat) 35
3.3.1.9 Lớp Thông tin chi tiết phiếu nhập (ThongTinCTPN) 36
3.3.1.10 Lớp Thông tin chi tiết phiếu xuất (ThongTinCTPX) 37
3.3.1.11 Lớp Thông tin nhân viên (ThongTinNhanVien) 39
3.3.2 Mối quan hệ giữa các lớp 40
CHƯƠNG 4: HIỆN THỰC ỨNG DỤNG 41
4.1 Đ ĂNG NHẬP HỆ THỐNG 41
4.1.1 Giao diện Form đăng nhập 41
4.1.2 Thao tác thực hiện 41
4.1.3 Phần code chức năng trong giao diện 42
4.2 Đ ỔI MẬT KHẨU 43
4.2.1 Giao diện Form đổi mật khẩu 43
4.2.2 Thao tác thực hiện 44
4.2.3 Phần code chức năng trong giao diện 44
4.3 G IAO DIỆN CHÍNH 45
4.3.1 Giao diện Form chính 45
4.3.2 Thao tác thực hiện 46
4.3.3 Phần code chức năng trong giao diện 46
4.4 Q UẢN LÝ THÔNG TIN SÁCH 47
4.4.1 Tab quản lý tác giả 48
4.4.1.1 Giao diện Form quản lý tác giả 48
4.4.1.2 Thao tác thực hiện 49
xii
Trang 184.4.1.3 Phần code chức năng trong giao diện 51
4.4.2 Tab quản lý nhà xuất bản 52
4.4.2.1 Giao diện Form quản lý nhà xuất bản 52
4.4.2.2 Thao tác thực hiện 52
4.4.2.3 Phần code chức năng giao diện 54
4.4.3 Tab quản lý loại sách 55
4.4.3.1 Giao diện Form quản lý loại sách 55
4.4.3.2 Thao tác thực hiện 56
4.4.3.3 Phần code chức năng giao diện 57
4.4.4 Tab quản lý thông tin sách 58
4.4.4.1 Giao diện Form quản lý thông tin sách 58
Thao tác thực hiện 59
4.4.4.2 Phần code chức năng giao diện 61
4.5 Q UẢN LÝ XUẤT SÁCH 62
4.5.1 Tab quản lý phiếu xuất sách 62
4.5.1.1 Giao diện Form quản lý phiếu xuất sách 62
4.5.1.2 Thao tác thực hiện 63
4.5.1.3 Phần code chức năng giao diện 65
4.5.2 Tab quản lý chi tiết phiếu xuất sách 66
4.5.2.1 Giao diện Form quản lý phiếu xuất sách 66
4.5.2.2 Thao tác thực hiện 67
4.5.2.3 Phần code chức năng giao diện 68
4.6 Q UẢN LÝ NHẬP SÁCH 69
4.6.1 Tab quản lý phiếu nhập sách 70
4.6.1.1 Giao diện Form quản lý phiếu nhập sách 70
4.6.1.2 Thao tác thực hiện 71
4.6.1.3 Phần code chức năng giao diện 73
4.6.2 Tab quản lý chi tiết phiếu nhập sách 74
4.6.2.1 Giao diện Form quản lý chi tiết phiếu nhập sách 74
4.6.2.2 Thao tác thực hiện 74
4.6.2.3 Phần code chức năng giao diện 76
xiii
Trang 194.7 Q UẢN LÝ NHÂN VIÊN 77
4.7.1 Giao diện Form quản lý nhân viên 77
4.7.2 Thao tác thực hiện 78
4.7.3 Phần code chức năng giao diện 80
CHƯƠNG 5: KẾT LUẬN VÀ KIẾN NGHỊ 82
5.1 N HỮNG KẾT QUẢ ĐẠT ĐƯỢC 82
5.2 N HỮNG MẶT HẠN CHẾ 82
5.3 H ƯỚNG PHÁT TRIỂN ĐỒ ÁN 82
TÀI LIỆU THAM KHẢO 83
xiv
Trang 20tài: Xây dựng chương trình quản lý sách tại nhà sách FAHASA
CHƯƠNG 1: GIỚI THIỆU TỔNG QUAN
1.1 Giới thiệu nhà sách FAHASA
Tên đơn vị: Công ty cổ phần phát hành sách-FAHASA (Nhà sách FAHASA)
Hình 1-1 Logo nhà sách FAHASA
Lĩnh vực hoạt động: Liên kết xuất bản, in ấn, phát hành sách
FAHASA là thương hiệu hàng đầu trong ngành Phát hành sách Việt Nam, ngay
từ thời bao cấp cho đến thời kỳ kinh tế thị trường, đổi mới, hội nhập quốc tế FAHASA ngày càng phát triển mạnh mẽ và giờ đây đã trở nên thân quen và tin cậy với tất cả người đọc ở mọi độ tuổi khác nhau từ trẻ em cho đến những cụ già trong những năm qua Có thể nói, hệ thống gần 60 nhà sách của FAHASA là những điểm sinh hoạt văn hóa thân quen dành cho mọi đối tượng bạn đọc Để tiếp tục thực hiện sứ mệnh “MANG TRI THỨC, VĂN HÓA ĐỌC ĐẾN VỚI MỌI NHÀ”! FAHASA đã và đang ngày càng nỗ lực hơn trong hoạt động sản xuất kinh doanh, tiếp tục góp phần vào sự nghiệp phát triển “văn hóa đọc”, làm cho những giá trị vĩnh hằng của sách ngày càng thấm sâu vào đời sống văn hóa tinh thần của xã hội, nhằm góp phần tích cực, đáp ứng yêu cầu nâng cao dân trí, bồi dưỡng nhân tài và nguồn nhân lực cho sự nghiệp công nghiệp hóa, hiện đại hóa đất nước.
Bởi vì, quy mô hoạt động của nhà sách lớn, với đội ngủ nhân viên đông đảo cùng với khả năng thời gian có hạn Vì vậy, trong đề tài này em đã chọn 1 chi nhánh ở TP HCM có địa chỉ 138 Lê Văn Việt, P Hiệp Phú, Q.9, TP.HCM
Sinh viên thực hiên: Đinh Huỳnh Y Pha- Nguyễn Hoàng Thy
Trang 1
Trang 21Hình 4-132 Code chức năng "Thêm" 80
Hình 4-133 Code chức năng "Xóa" 80
Hình 4-134 Code chức năng "Sửa" 80
Hình 4-135 Code chức năng "Tìm kiếm" 81
Hình 4-136 Code cho phương thức timkiem () 81
Hình 4-137 Code chức năng "Reset" 81
Trang 22viii
Trang 23DANH MỤC BẢNG
Bảng 2-1 Điểm khác nhau giữa AWT và Swing 11Bảng 3-1 Bảng NhanVien 23Bảng 3-2 Bảng NhaXuatBan 24Bảng 3-3 Bảng TacGia 24Bảng 3-4 Bảng LoaiSach 25Bảng 3-5 Bảng Sach 25Bảng 3-6 Bảng PhieuNhapSach 25Bảng 3-7 Bảng PhieuXuatSach 26Bảng 3-8 Bảng CTPNS 26Bảng 3-9 Bảng CTPXS 26Bảng 3-10 Bảng thuộc tính lớp KetNoi 28Bảng 3-11 Bảng thuộc tính lớp ThongTinDangNhap 29Bảng 3-12 Thuộc tính lớp ThongTinTacGia 29Bảng 3-13 Bảng thuộc tính lớp ThongTinLoaiSach 30Bảng 3-14 Thuộc tính lớp ThongTinNXB 32Bảng 3-15 Bảng thuộc tính lớp ThongTinSach 33
Trang 24Bảng 3-16 Thuộc tính lớp ThongTinPhieuNhap 34Bảng 3-17 Thuộc tính lớp ThongTinPhieuXuat 35Bảng 3-18 Thuộc tính lớp ThongTinCTPN 37Bảng 3-19 Thuộc tính lớp ThongTinCTPX 38Bảng 3-20 Bảng thuộc tính lớp ThongTinNhanVien 39
ix
Trang 25MỤC LỤC
DANH MỤC TỪ VIẾT TẮT IDANH MỤC THUẬT NGỮ ANH – VIỆT IIDANH MỤC HÌNH IIIDANH MỤC BẢNG IXMỤC LỤC XCHƯƠNG 1: GIỚI THIỆU TỔNG QUAN 11.1 GIỚI THIỆU NHÀ SÁCH FAHASA 11.2 TÍNH CẤP THIẾT CỦA ĐỀ TÀI 21.3 MỤC TIÊU ĐỀ TÀI 31.4 NỘI DUNG ĐỀ TÀI 31.5 PHƯƠNG PHÁP NGHIÊN CỨU 31.6 ĐỐI TƯỢNG VÀ PHẠM VI NGHIÊN CỨU 4CHƯƠNG 2: CƠ SỞ LÝ THUYẾT 42.1 TỔNG QUAN VỀ NGÔN NGỮ AVA J 42.1.1 Giới thiệu về ngôn ngữ 42.1.1.1 Lịch sử ngôn ngữ Java 42.1.1.2 Khái niệm 52.1.1.3 Đặc điểm 52.1.1.4 Ưu – nhược điểm 62.1.2 Hướng đối tượng trong Java 72.1.2.1 Các khái niệm về hướng đối tượng 72.1.3 Giới thiệu về Java Swing 102.1.3.1 Khái niệm 10
Trang 262.1.3.2 Phân cấp các lớp trong java swing 112.1.3.3 Các thành phần cơ bản 12
x
2.1.4 Java JDBC 132.1.4.1 Khái niệm 132.1.4.2 Các thành phần của JDBC 13
Trang 272.1.4.3 Cách kết nối CSDL MySQL 152.2 CÁC CÔNG CỤ SỬ DỤNG KHÁC 172.2.1 Tổng quan về Netbeans IDE 172.2.1.1 Khái niệm 172.2.1.2 Chức năng 182.2.1.3 Ưu – nhược điểm 182.2.2 Tổng quan về Hệ quản trị CSDL MySQL 192.2.2.1 Giới thiệu 192.2.2.2 Đặc điểm 192.2.2.3 Ưu điểm và nhược điểm 20CHƯƠNG 3: PHÂN TÍCH VÀ THIẾT KẾ CHƯƠNG TRÌNH 223.1 PHÂN TÍCH THIẾT KẾ HỆ THỐNG 223.1.1 Mô tả hệ thống 223.1.2 Giới hạn phạm vi hệ thống 223.2 GIỚI THIỆU VỀ CSDL 233.2.1 Giới thiệu các bảng 233.2.1.1 Bảng NhanVien (Nhân viên) 233.2.1.2 Bảng NhaXuatBan (Nhà xuất bản) 233.2.1.3 Bảng TacGia (Tác giả) 243.2.1.4 Bảng LoaiSach (Loại sách) 243.2.1.5 Bảng Sach (Sách) 253.2.1.6 Bảng PhieuNhapSach (Phiếu nhập sách) 253.2.1.7 Bảng PhieuXuatSach (Phiếu xuất sách) 263.2.1.8 Bảng CTPNS (Chi tiết phiếu nhập sách) 263.2.1.9 Bảng CTPXS (Chi tiết phiếu xuất sách) 263.2.2 Sơ đồ diagram 273.3 THIẾT KẾ CÁC LỚP 27
xi
Trang 283.3.1 Thiết kế các lớp 273.3.1.1 Lớp Kết nối (KetNoi) 273.3.1.2 Lớp Đăng nhập (ThongTinDangNhap) 283.3.1.3 Lớp Thông tin tác giả (ThongTinTacGia) 293.3.1.4 Lớp Thông tin loại sách (ThongTinLoaiSach) 303.3.1.5 Lớp Thông tin nhà xuất bản (ThongTinNXB) 313.3.1.6 Lớp Thông sách (ThongTinSach) 333.3.1.7 Lớp Thông tin phiếu nhập (ThongTinPhieuNhap) 343.3.1.8 Lớp Thông tin phiếu xuất (ThongTinPhieuXuat) 353.3.1.9 Lớp Thông tin chi tiết phiếu nhập (ThongTinCTPN) 363.3.1.10 Lớp Thông tin chi tiết phiếu xuất (ThongTinCTPX) 373.3.1.11 Lớp Thông tin nhân viên (ThongTinNhanVien) 393.3.2 Mối quan hệ giữa các lớp 40
Trang 29q ệ g pCHƯƠNG 4: HIỆN THỰC ỨNG DỤNG 414.1 ĐĂNG NHẬP HỆ THỐNG 414.1.1 Giao diện Form đăng nhập 414.1.2 Thao tác thực hiện 414.1.3 Phần code chức năng trong giao diện 424.2 ĐỔI MẬT KHẨU 434.2.1 Giao diện Form đổi mật khẩu 434.2.2 Thao tác thực hiện 444.2.3 Phần code chức năng trong giao diện 444.3 GIAO DIỆN CHÍNH 454.3.1 Giao diện Form chính 454.3.2 Thao tác thực hiện 464.3.3 Phần code chức năng trong giao diện 464.4 QUẢN LÝ THÔNG TIN SÁCH 474.4.1 Tab quản lý tác giả 484.4.1.1 Giao diện Form quản lý tác giả 484.4.1.2 Thao tác thực hiện 49
xii
Trang 304.4.1.3 Phần code chức năng trong giao diện 514.4.2 Tab quản lý nhà xuất bản 524.4.2.1 Giao diện Form quản lý nhà xuất bản 524.4.2.2 Thao tác thực hiện 524.4.2.3 Phần code chức năng giao diện 544.4.3 Tab quản lý loại sách 554.4.3.1 Giao diện Form quản lý loại sách 554.4.3.2 Thao tác thực hiện 564.4.3.3 Phần code chức năng giao diện 574.4.4 Tab quản lý thông tin sách 584.4.4.1 Giao diện Form quản lý thông tin sách 58
Thao tác thực hiện 594.4.4.2 Phần code chức năng giao diện 614.5 QUẢN LÝ XUẤT SÁCH 624.5.1 Tab quản lý phiếu xuất sách 624.5.1.1 Giao diện Form quản lý phiếu xuất sách 624.5.1.2 Thao tác thực hiện 634.5.1.3 Phần code chức năng giao diện 654.5.2 Tab quản lý chi tiết phiếu xuất sách 664.5.2.1 Giao diện Form quản lý phiếu xuất sách 664.5.2.2 Thao tác thực hiện 674.5.2.3 Phần code chức năng giao diện 68
Trang 314.6 QUẢN LÝ NHẬP SÁCH 694.6.1 Tab quản lý phiếu nhập sách 704.6.1.1 Giao diện Form quản lý phiếu nhập sách 704.6.1.2 Thao tác thực hiện 714.6.1.3 Phần code chức năng giao diện 734.6.2 Tab quản lý chi tiết phiếu nhập sách 744.6.2.1 Giao diện Form quản lý chi tiết phiếu nhập sách 744.6.2.2 Thao tác thực hiện 744.6.2.3 Phần code chức năng giao diện 76
xiii
Trang 324.7 QUẢN LÝ NHÂN VIÊN 774.7.1 Giao diện Form quản lý nhân viên 774.7.2 Thao tác thực hiện 784.7.3 Phần code chức năng giao diện 80CHƯƠNG 5: KẾT LUẬN VÀ KIẾN NGHỊ 825.1 NHỮNG KẾT QUẢ ĐẠT ĐƯỢC 825.2 NHỮNG MẶT HẠN CHẾ 825.3 HƯỚNG PHÁT TRIỂN ĐỒ ÁN 82TÀI LIỆU THAM KHẢO 83
xiv
Trang 33tài: Xây dựng chương trình quản lý sách tại nhà sách FAHASA
CHƯƠNG 1: GIỚI THIỆU TỔNG QUAN 1.1 Giới thiệu nhà sách FAHASA
Tên đơn vị: Công ty cổ phần phát hành sách-FAHASA (Nhà sách FAHASA)
Trang 34Hình 1-1 Logo nhà sách FAHASA
Lĩnh vực hoạt động: Liên kết xuất bản, in ấn, phát hành sách
FAHASA là thương hiệu hàng đầu trong ngành Phát hành sách Việt Nam, ngay
từ thời bao cấp cho đến thời kỳ kinh tế thị trường, đổi mới, hội nhập quốc tế.FAHASA ngày càng phát triển mạnh mẽ và giờ đây đã trở nên thân quen và tincậy với tất cả người đọc ở mọi độ tuổi khác nhau từ trẻ em cho đến những cụgià trong những năm qua Có thể nói, hệ thống gần 60 nhà sách của FAHASA lànhững điểm sinh hoạt văn hóa thân quen dành cho mọi đối tượng bạn đọc Đểtiếp tục thực hiện sứ mệnh “MANG TRI THỨC, VĂN HÓA ĐỌC ĐẾN VỚIMỌI NHÀ”! FAHASA đã và đang ngày càng nỗ lực hơn trong hoạt động sảnxuất kinh doanh, tiếp tục góp phần vào sự nghiệp phát triển “văn hóa đọc”, làmcho những giá trị vĩnh hằng của sách ngày càng thấm sâu vào đời sống văn hóatinh thần của xã hội, nhằm góp phần tích cực, đáp ứng yêu cầu nâng cao dân trí,bồi dưỡng nhân tài và nguồn nhân lực cho sự nghiệp công nghiệp hóa, hiện đạihóa đất nước
Bởi vì, quy mô hoạt động của nhà sách lớn, với đội ngủ nhân viên đông đảocùng với khả năng thời gian có hạn Vì vậy, trong đề tài này em đã chọn 1 chinhánh ở TP HCM có địa chỉ 138 Lê Văn Việt, P Hiệp Phú, Q.9, TP.HCM
Sinh viên thực hiên: Đinh Huỳnh Y Pha- Nguyễn Hoàng Thy
Trang 1
Trang 35tài: Xây dựng chương trình quản lý sách tại nhà sách FAHASA
Hình 1-2 Hình ảnh nhà sách FAHASA quận 9
1.2 Tính cấp thiết của đề tài
Ở bất kỳ thời kỳ lịch sử nào, sách cũng được coi là kho trí thức của con người Nhu
Trang 36cầu sử dụng sách ngày càng rộng rãi, ở bất kỳ lĩnh vực nào cũng cần sách Hiện nay tạinhà sách FaHaSa đã có hàng ngàn, hàng vạn loại sách, báo, tạp chí khác nhau để nhằmphục vụ nhu cầu khách hàng Ngày trước, việc quản lý sách tại nhà sách đều được thựchiên thủ công Tuy nhiên, cùng với quá trình phát triển công nghiệp hóa, hiện đại hóa đất nước để đáp ứng nhu cầu tri thức ngày càng cao của con người, hiện nay quy mô nhà sách Nhã Nam ngày càng mở rộng, khách hàng ngày càng đông, số lượng sách về càng nhiều nên việc quản lý sách ở đây rất cần thiết có một công cụ hỗ trợ quản lý tốt hơn và xử lý nhanh hơn, tối ưu được các quá trình trong việc xử lý sách Trong khi hệ thống cũ thực sự chưa đáp ứng được mong muốn xử lý nhanh và hiệu quả, vẫn còn những thiếu xót Do đó, thấu hiểu được nhu cầu thực tế hiện tại của nhà sách và cũng
là mong muốn của khách hàng, tôi đã tiến hành xây dựng một chương trình quản lý sách tốt hơn Và đó cũng là lý do tôi chọn đề tài “Xây dựng chương trình quản lý sách tại nhà sách FaHaSa”
Sinh viên thực hiên: Đinh Huỳnh Y Pha- Nguyễn Hoàng Thy
Trang 2
Trang 37lý sách trở nên nhanh chóng hiệu quả, đem lại doanh thu lợi nhuận cho nhà sách.
Đồ án sẽ xây dựng một chương trình quản lý sách tại nhà sách FAHASA với các chức năng như:
Quy trình quản lý sách tại nhà sách
Quản lý thông tin sách bao gồm: Mã sách, tên sách, số lượng, giá bán, …
Quản lý nhập sách từ nhà cung cấp
Quản lý xuất sách từ kho để bán cho khách hàng.
1.4 Nội dung đề tài
Những nội dung em dự định hoàn thành bao gồm:
Các thông tin về quy trình nghiệp vụ quản lý bán hàng của cửa hàng.
Giới thiệu và sử dụng các công cụ hỗ trợ xây dựng chương trình
Phân tích hệ thống và tiến hành thiết kế hệ thống
Trang 38Để nghiên cứu quy trình quản lý sách và xây dựng chương trình quản lý phù hợp với yêu cầu thực tế ở nhà sách FAHASA quận 9 và để đảm bảo an toàn trong điều kiệndịch bệnh phức tạp, nnhóm em đã sử dụng các phương pháp trong quá trình thực hiện
Sinh viên thực hiên: Đinh Huỳnh Y Pha- Nguyễn Hoàng Thy
Trang 3
Đề
tài: Xây dựng chương trình quản lý sách tại nhà sách FAHASA
đề tài thông qua việc tìm kiếm các tài liệu, thông tin liên quan đến nhà sách FAHASA
ũ hư t ì h ả lý ủ hà á h FAHASA à á hà á h khá
Trang 39cũng như quy trình quản lý của nhà sách FAHASA và các nhà sách khác.
1.6 Đối tượng và phạm vi nghiên cứu
Đối tượng nghiên cứu: Quản lý sách tại nhà sách Fahasa quận 9
Phạm vi đề tài: Đồ án được thực hiện dựa trên cơ sở phạm vi môn học lập trìnhJava Do khả năng và phạm vi có hạn nên em chỉ xây dựng chương trình quản
lý sách ở qui mô nhỏ tại nhà sách Fahasa quận 9
Sinh viên thực hiên: Đinh Huỳnh Y Pha- Nguyễn Hoàng Thy
Trang 4
Trang 40tài: Xây dựng chương trình quản lý sách tại nhà sách FAHASA
CHƯƠNG 2: CƠ SỞ LÝ THUYẾT 2.1 Tổng quan về ngôn ngữ Java
2.1.1 Giới thiệu về ngôn ngữ
2.1.1.1 Lịch sử ngôn ngữ Java
James Gosling, Mike Sheridan và Patrick Naughton đã khởi xướng dự ánngôn ngữ lập trình Java vào tháng 6 năm 1991 Nhóm các kỹ sư của Sunđược gọi là Green Team Ban đầu James Gosling đặt tên là ‘Greentalk’ vàphần mở rộng tập tin là gt Sau đó, nó được gọi là Oak và được phát triểnnhư một phần của dự án Green
Các phiên bản ngôn ngữ Java: