1. Trang chủ
  2. » Giáo Dục - Đào Tạo

ĐỒ ÁN MÔN HỌC LẬP TRÌNH MẠNG MÁY TÍNH ( JAVA ) QUẢN LÝ BẢO DƯỠNG XE MÁY

46 13 0

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

THÔNG TIN TÀI LIỆU

Thông tin cơ bản

Tiêu đề Quản Lý Bảo Dưỡng Xe Máy
Tác giả Nguyễn Nhật Lâm, Nguyễn Võ Minh Khang, Trần Công Danh, Trần Mai Anh Khoa
Người hướng dẫn GVBM: Nguyễn Lê Văn
Trường học Trường Đại Học Công Nghệ Tp. Hồ Chí Minh
Chuyên ngành Công Nghệ Thông Tin
Thể loại đồ án
Năm xuất bản 2021
Thành phố Tp.Hồ Chí Minh
Định dạng
Số trang 46
Dung lượng 1,51 MB

Cấu trúc

  • CHƯƠNG I: TỔNG QUAN (4)
    • 1.1 Tổng quan (4)
      • 1.1.1 Mục đích (4)
      • 1.1.2 Bối cảnh (4)
    • 1.2 Mục tiêu (4)
  • CHƯƠNG II: CƠ SỞ LÝ THUYẾT (5)
    • 2.1 Mô hình ứng dụng Client-Server (5)
      • 2.1.1 Kiến trúc Client-Server (5)
      • 2.1.2 Ưu điểm của kiến trúc Client-Server (5)
    • 2.2 Ứng dụng theo mô hình Client-Server (6)
      • 2.2.1 Cách thức hoạt động (6)
      • 2.2.2 Đặc trưng của mô hình ứng dụng Client-Server (7)
    • 2.3 Lập trình JAVA (8)
      • 2.3.1 Giới thiệu khái quát ngôn ngữ Java (8)
      • 2.3.2 Một sô đặc điểm nổi bật của ngôn ngữ lập trình Java (8)
  • CHƯƠNG III. PHÂN TÍCH THIẾT KẾ (11)
    • 3.1 Mô tả bài toán (11)
    • 3.2 Kịch bản xử lý chương trình (12)
    • 3.3 Mô tả Cơ sở dữ liệu, các lớp, hàm xử lý chương trình (14)
      • 3.3.1 Cơ sở dữ liệu và driver kết nối cần thiết (14)
      • 3.3.2 Chương trình cần thiết (14)
      • 3.3.3 Các lớp, hàm xử lý của chương trình (14)
    • 3.4 Hướng dẫn cài đặt và demo chương trình (18)
      • 3.4.1 Phần đăng nhập và phân quyền (18)
      • 3.4.2 Phần chức năng (24)
    • 3.5 Mã lệnh gửi đi và thông điệp trả về (43)
      • 3.5.1 Bảng mã lệnh và thông điệp trả về (43)
      • 3.5.2 Mô hình trao đổi lệnh và thông điệp trả về giữa Client Server và (45)
    • CSDL 46 CHƯƠNG IV: TÀI LIỆU THAM KHẢO (0)

Nội dung

TỔNG QUAN

Tổng quan

Xây dựng hệ thống Theo Dõi Bảo Dưỡng Xe Ôtô giúp nhân viên trong Garage dễ dàng tra cứu thông tin bảo dưỡng, hoàn thành công việc đúng tiến độ và không phụ thuộc vào bên thứ ba.

Ba cung cấp dịch vụ không chỉ đảm bảo tính thuận tiện mà còn bảo mật Hệ thống dễ dàng cài đặt, thiết lập, bảo trì và nâng cấp.

Hệ thống này không chỉ nâng cao hiệu quả làm việc của nhân viên và các phòng ban, mà còn tạo điều kiện thuận lợi cho việc giám sát giữa cấp trên và cấp dưới, cũng như cải thiện quy trình phân công công việc giữa các cấp và phòng ban.

Mục tiêu

 Tìm hiểu được mô hình Client – Server.

 Nắm rõ cách hoạt động của mô hình Client – Server.

 Tạo sự dễ dàng và đơn giản trong các thao tác sử dụng.

CƠ SỞ LÝ THUYẾT

Mô hình ứng dụng Client-Server

Kiến trúc Client-Server là mô hình phổ biến trong hệ thống phân tán, bao gồm hai thành phần chính: Server và Client Server chịu trách nhiệm cung cấp các chức năng, trong khi Client là người tiêu thụ những chức năng này Hai thành phần này thường kết nối qua mạng, với Client chủ động tạo kết nối và gửi yêu cầu đến Server, trong khi Server lắng nghe và phản hồi các yêu cầu từ Client.

Mô hình Client-Server cơ bản nhất bao gồm một Server phục vụ nhiều Client đồng thời, thường được gọi là kiến trúc hai lớp (2-Tier) Các ứng dụng Client-Server phổ biến nhất hiện nay là các chương trình chat và email.

2.1.2 Ưu điểm của kiến trúc Client-Server.

Quản lý tập trung giúp lưu trữ dữ liệu trên một Server duy nhất, thay vì phân tán trên nhiều thiết bị khác nhau, từ đó đơn giản hóa quá trình truy xuất và cập nhật thông tin.

Dễ dàng bảo trì nhờ vào khả năng quản lý tập trung, việc bảo trì chủ yếu chỉ cần thực hiện trên Server Khi hệ thống có nhiều Server và thiết bị dự phòng, quá trình bảo trì như sửa chữa hay thay thế Server có thể diễn ra mượt mà mà không ảnh hưởng đến phía Client.

Bảo mật dữ liệu tập trung trên Server đồng nghĩa với việc kiểm soát dễ dàng hơn.

Hình 1: Mô hình client-server.

Ứng dụng theo mô hình Client-Server

Các tiến trình Clients và Servers có thể hoạt động trên cùng một máy chủ hoặc trên các máy chủ khác nhau Chúng là những đối tượng logic tách biệt, giao tiếp qua mạng để thực hiện các nhiệm vụ chung.

 Server: quản lý nguồn tài nguyên, nhận request từ Clients để cung cấp và phân phối tài nguyên cho Clients.

 Client: là chương trình giao tiếp với người sử dụng, có nhiệm vụ gửi request cho Server và thể hiện việc tiếp nhận tài nguyên đó.

Khởi tạo kết nối với server trước.

Yêu cầu dịch vụ nào đó từ server.

Chấp nhận yêu cầu và tạo kết nối với client.

Tính toán và cung cấp dịch vụ theo yêu cầu của client.

Hình 2: Cách hoạt động của mô hình Client-Server.

2.2.2 Đặc trưng của mô hình ứng dụng Client-Server.

 Thể hiện quan hệ một chiều giữa các Client và một Server.

 Client bắt đầu phiên hội thoại bằng cách yêu cầu dịch vụ

 Server sẵn sang chờ các yêu cầu từ Client.

+ Một server có thể chiwa sẻ tài nguyên cho nhiều client cùng 1 lúc

+ Server cũng có khả năng điều phối truy nhập các client đến các tài nguyên dùng chung.

Lập trình JAVA

2.3.1 Giới thiệu khái quát ngôn ngữ Java.

Java là một ngôn ngữ lập trình hướng đối tượng (OOP) độc đáo, khác với nhiều ngôn ngữ lập trình thông thường Thay vì biên dịch trực tiếp mã nguồn thành mã máy hoặc thông dịch khi chạy, Java biên dịch mã nguồn thành bytecode Bytecode này sau đó được môi trường thực thi chạy, giúp Java thường có hiệu suất nhanh hơn so với các ngôn ngữ lập trình thông dịch khác như Python, Perl hay PHP.

Cú pháp Java được vay mượn nhiều từ C & C++ nhưng có cú pháp hướng đối tượng đơn giản hơn và ít tính năng xử lý cấp thấp hơn.

2.3.2 Một sô đặc điểm nổi bật của ngôn ngữ lập trình Java.

Máy ảo Java (JVM – Java Virtual Machine)

Tất cả các chương trình cần được biên dịch thành mã máy để thực thi, và mã máy này khác nhau tùy thuộc vào kiến trúc CPU của từng loại máy tính Ví dụ, tập lệnh mã máy của CPU Intel, Solarix và Macintosh đều không giống nhau Do đó, một chương trình sau khi biên dịch chỉ có thể chạy trên một kiến trúc CPU cụ thể Đối với CPU Intel, người dùng có thể chạy các hệ điều hành như Microsoft Windows, Unix, Linux và OS/2.

Chương trình trên Windows được biên dịch thành file EXE, trong khi trên Linux, chúng được biên dịch thành file ELF Do đó, để chạy một chương trình Windows trên hệ điều hành khác như Linux, cần phải chỉnh sửa và biên dịch lại chương trình đó.

Ngôn ngữ lập trình Java được phát triển nhờ vào máy ảo Java, giúp khắc phục những khó khăn trong việc biên dịch Chương trình viết bằng Java sẽ được chuyển đổi thành mã bytecode, và máy ảo Java sẽ chuyển mã này thành mã máy tương ứng Sun Microsystem là đơn vị phát triển các máy ảo Java, cho phép chúng hoạt động trên nhiều hệ điều hành và kiến trúc CPU khác nhau.

Java là một ngôn ngữ lập trình hỗn hợp, vừa biên dịch vừa thông dịch Các chương trình Java có đuôi *.java sẽ được biên dịch thành tệp *.class, sau đó được trình thông dịch chuyển đổi thành mã máy Java nổi bật với tính độc lập nền tảng, cho phép chạy trên nhiều hệ điều hành khác nhau mà không cần thay đổi mã nguồn.

Chương trình viết bằng ngôn ngữ Java có khả năng hoạt động trên nhiều hệ điều hành khác nhau như Windows, Unix, và Linux, miễn là có cài đặt Java Virtual Machine (JVM) Điều này cho phép lập trình viên viết mã một lần và chạy trên bất kỳ nền tảng nào, thể hiện triết lý "viết một lần, chạy mọi nơi".

Hướng đối tượng trong Java tương tự như C++, nhưng Java là một ngôn ngữ lập trình hoàn toàn hướng đối tượng Tất cả các thành phần trong Java đều liên quan đến các đối tượng đã được định nghĩa trước, bao gồm cả hàm main, hàm chính của chương trình, phải được đặt bên trong một lớp.

Java sử dụng khái niệm interface để hỗ trợ tính đa kế thừa, một vấn đề quan trọng sẽ được thảo luận chi tiết trong phần sau Ngoài ra, Java cũng cung cấp khả năng đa nhiệm và đa luồng, cho phép thực thi nhiều tác vụ đồng thời.

Java hỗ trợ lập trình đa nhiệm và đa luồng, cho phép nhiều tiến trình và tiểu trình hoạt động song song và tương tác với nhau một cách hiệu quả.

Chương trình ứng dụng được viết bằng ngôn ngữ Java chỉ cần chạy trên máy ảo Java, cho phép nó hoạt động trên mọi máy tính và hệ điều hành hỗ trợ máy ảo này Nguyên tắc "Viết một lần, chạy mọi nơi" (Write Once, Run Anywhere) giúp Java trở thành một lựa chọn linh hoạt cho các nhà phát triển.

Hỗ trợ mạnh cho việc phát triển ứng dụng:

Công nghệ Java đã phát triển mạnh mẽ nhờ sự hỗ trợ từ Sun Microsystems, cung cấp nhiều công cụ và thư viện lập trình phong phú Các phiên bản như J2SE (Java 2 Standard Edition) giúp phát triển ứng dụng đơn và ứng dụng client-server, trong khi J2EE (Java 2 Enterprise Edition) tập trung vào phát triển ứng dụng thương mại Bên cạnh đó, J2ME (Java 2 Micro Edition) hỗ trợ phát triển ứng dụng cho thiết bị di động và không dây.

PHÂN TÍCH THIẾT KẾ

Mô tả bài toán

Mô hình Hệ thống theo dõi Bảo dưỡng xe Oto gồm 2 phần: Server và Client. Tại Server.

 Quản lý các kết nối, các đăng nhập và xác thực tài khoản từ phía client kết nối đến

 Thực hiện các thao tác kết nối truy vấn đến CSDL khi nhận các yêu cầu từ pclient client và đáp trả các yêu cầu đó.

 Thông báo cho người dùng khi xử lý các thao tác thêm, xoá, sửa, cập nhật. Tại Client.

 Kết nối vào server thông qua tên USER và PASSWORD nếu đã có tài khoản.

 Tài khoản được cấp bởi Nhân viên có quyền Quản trị viên.

 Thực hiện thao tác thêm, xoá, sửa, cập nhật thông qua giao diện đồ hoạ hiển thị trên màn hình.

Kịch bản xử lý chương trình

1 Server chạy sẵn và chờ được kết nối.

2 Client gửi yêu cầu kết nối

3 Server chấp nhận yêu cầu kết nối.

4 Client gửi yêu cầu đăng nhập bằng tài khoản và mật khẩu.

5 Server xác thực thông tin tài khoản và gửi lại xác thực và phân quyền của tài khoản.

6 Client nhận xác thực và hiển thị các chức năng trên giao diện theo quyền được cấp.

7 Client gửi yêu cầu nạp dữ liệu.

8 Server nhận yêu cầu nạp dữ liệu từ Client và truy vấn vào CSDL.

9 Server gửi lại các yêu cầu dữ liệu mà client cần

10 Client nhận được dữ liệu từ phía Server và lưu trong bộ nhớ tạm

11 Client thao tác các chức năng và gửi yêu cầu thêm, xoá, sửa, cập nhật cho

12 Server nhận yêu cầu cầu thêm, xoá, sửa, cập nhật và dùng truy vấn để thực hiện trên CSDL.

Client gửi thao tác đăng xuất khi làm xong công việc

Server nhận thao tác đăng xuất và ngắt kết nối vớiClient Kết thúc quá trình làm việc.

Mô tả Cơ sở dữ liệu, các lớp, hàm xử lý chương trình

3.3.1 Cơ sở dữ liệu và driver kết nối cần thiết

Sử dụng cơ sở dữ liệu my sql để lưu trữ dữ liệu.

 Thư viện Mysql-connector-java.

3.3.3 Các lớp, hàm xử lý của chương trình.

 Rcarclient: chứa các form giao diện người dùng và các lớp xử lý kết nối với Server.

 MainBaoDuongxe: chứa hàm main và các hàm dich vụ chịu trách nhiệm kết nối và truy vấn dữ liệu từ Server.

 NhanDuLieu.java: là lớp Thread được khởi tạo từ MainBaoDuongxe dùng để nhận các thông điệp trả về từ Server để truyền cho các hàm xử lý.

Các lớp User, QLUser , loixe, BaoDuong và QLBDuong chứa các hàm xử lý liên quan đến danh sách nhân viên, lỗi xe và bảo dưỡng Chúng hỗ trợ các chức năng thêm, xóa, sửa và cập nhật thông tin trên các Form chức năng.

 Dangnhap, QuanLyUser, QuanLyBaoDuong, QuanLyLoiXe: là các Form chức năng.

 Rcarserver.java: là hàm chính của chương trình, chứa hàm main(), có trách nhiệm lắng nghe kết nối và kết nối với client khi có yêu cầu.

 Phucvuclient.java: thực hiện tương tác với client, nhận thông tin từ client gửi lên và trả về kết quả phù hợp, chức các hàm thao tác.

Các lớp như User, QLUser , loixe, BaoDuong và QLBDuong chứa các hàm xử lý và truy vấn cơ sở dữ liệu liên quan đến danh sách nhân viên, lỗi xe và bảo dưỡng, nhằm đáp ứng các yêu cầu từ phía khách hàng.

Hướng dẫn cài đặt và demo chương trình

Chương trình gồm 3 thành phần chính: Client, Server và MySQL.

3.4.1 Phần đăng nhập và phân quyền.

Khởi động chương trình mysql sau đó chạy Server tiếp theo là đến Client.

Chọn HeThong/Ket Noi : để thiết lập kết nối với Server và CSDL bằng lệnh KETNOICSDL(010).

Server khi kết nối được sẽ đáp trả bằng lệnh DAKETNOICSDL(011) và xác thưc thành công (012).

Khi Giao diện Client đã kết nối với Server và CSDL: Đăng nhập theo tài khoản được cấp vào chương trình và thao tác bình thường.

Tài khoản Admin: khang Mật khẩu: 123456.

Tài khoản Nhân viên: U0002 Mật khẩu: user@123

Client gửi lệnh DANGNHAP(20) cho Server.

Server xác nhận tài khoản và gửi lại lệnh XACNHAN(21), thành công (22) và thất bại(23).

Phân quyền quản trị viên được xác thực các chức năng được bật lên:

Phân quyền Nhân viên được xác thực các chức năng được bật lên:

3.4.2 Phần chức năng: a Nạp Dữ Liệu:

Client gửi lệnh Nạp Dữ liệu đến Server, gồm có 3 lệnh NAPUSER(100),

Server nhận yêu cầu và truy vấn CSDL.

Server trả về Client dữ liệu đã truy vấn bằng 3 lệnh NHANUSER(101),

 Thực nghiệm: b Chức năng Quản Lý User:

Dữ liệu trên giao diện được truyền xuống bộ nhớ đệm để lưu trữ.

Dữ liệu mới được hiện trên bảng.

Khi chọn nút Tạo thì ID của nhân viên sẽ được tăng tự động bởi hàm idtudong.

Từ Client dữ liệu sẽ được gom chuỗi và thông qua form chính gửi đến Server theo lệnh LUUUSER(070).

Server dùng truy vấn lưu xuống CSDL và trả lời bằng lệnh DALUUUSER(071).

Client gửi lệnh xoá User cho Server bằng lệnh XOAUSER(200) và xoá ở bộ nhớ đệm. Server nhận lệnh và xoá User ở CSDL và đáp trả bằng lệnh XOAUSER(201).

Chọn User cần sửa trong bảng và sửa thông tin User.

Client gửi lệnh cập nhật User cho Server CAPNHATUSER(300).

Server nhận lệnh và cập nhật trong CSDL.

Server đáp trả Client bằng lệnh DACAPNHATUSER(301).

 Thực nghiệm: c Chức năng Quản lý Lỗi xe:

Dữ liệu trên giao diện được truyền xuống bộ nhớ đệm để lưu trữ.

Dữ liệu mới được hiện trên bảng.

Khi chọn nút Tạo thì ID của nhân viên sẽ được tăng tự động bởi hàm idtudong.

Từ Client dữ liệu sẽ được gom chuỗi và thông qua form chính gửi đến Server theo lệnh LUULOIXE(080).

Server dùng truy vấn lưu xuống CSDL và trả lời bằng lệnh DALUULOIXE (081)

Client gửi lệnh xoá User cho Server bằng lệnh XOALOIXE (210) và xoá ở bộ nhớ đệm.

Server nhận lệnh và xoá User ở CSDL và đáp trả bằng lệnh XOALOIXE (211).

 Thực nghiệm: d Chức năng Bảo Dưỡng:

Từ Client dữ liệu sẽ được gom chuỗi và thông qua form chính gửi đến Server theo lệnh LUUBD(090).

Server dùng truy vấn lưu xuống CSDL và trả lời bằng lệnh DALUULBD (091)

Chọn User cần sửa trong bảng và sửa thông tin User.

Client gửi lệnh cập nhật User cho Server CAPNHATBD(310).

Server nhận lệnh và cập nhật trong CSDL.

Server đáp trả Client bằng lệnh DACAPNHATBD(311).

Mã lệnh gửi đi và thông điệp trả về

3.5.1 Bảng mã lệnh và thông điệp trả về

STT Client Mã thông điệp Server

1 Kết nối Server và Dữ liệu

011 > 020 >>

021 > 030

080 >>

090 >>

Nạp dữ liệu Lỗi xe >> 120 >>

130 >>

300 >>

Ngày đăng: 01/10/2022, 08:26

HÌNH ẢNH LIÊN QUAN

Hình 1: Mơ hình client-server. - ĐỒ ÁN MÔN HỌC LẬP TRÌNH MẠNG MÁY TÍNH ( JAVA ) QUẢN LÝ BẢO DƯỠNG XE MÁY
Hình 1 Mơ hình client-server (Trang 6)
Hình 2: Cách hoạt động của mơ hình Client-Server. - ĐỒ ÁN MÔN HỌC LẬP TRÌNH MẠNG MÁY TÍNH ( JAVA ) QUẢN LÝ BẢO DƯỠNG XE MÁY
Hình 2 Cách hoạt động của mơ hình Client-Server (Trang 7)
Chọn User cần sửa trong bảng và sửa thông tin User. - ĐỒ ÁN MÔN HỌC LẬP TRÌNH MẠNG MÁY TÍNH ( JAVA ) QUẢN LÝ BẢO DƯỠNG XE MÁY
h ọn User cần sửa trong bảng và sửa thông tin User (Trang 30)
Chọn User cần sửa trong bảng và sửa thông tin User. - ĐỒ ÁN MÔN HỌC LẬP TRÌNH MẠNG MÁY TÍNH ( JAVA ) QUẢN LÝ BẢO DƯỠNG XE MÁY
h ọn User cần sửa trong bảng và sửa thông tin User (Trang 41)
3.5.2 Mơ hình trao đổi lệnh và thông điệp trả về giữa Client Server và CSDL - ĐỒ ÁN MÔN HỌC LẬP TRÌNH MẠNG MÁY TÍNH ( JAVA ) QUẢN LÝ BẢO DƯỠNG XE MÁY
3.5.2 Mơ hình trao đổi lệnh và thông điệp trả về giữa Client Server và CSDL (Trang 45)

TÀI LIỆU CÙNG NGƯỜI DÙNG

TÀI LIỆU LIÊN QUAN

w