1. Trang chủ
  2. » Luận Văn - Báo Cá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 3 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 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,52 MB

Cấu trúc

  • 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.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

Bối cảnh

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ư việc 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ột mô hình quan trọng trong các hệ thống phân tán, bao gồm hai thành phần chính: Server và Client Server có nhiệm vụ cung cấp chức năng, trong khi Client là bên tiêu thụ các chức năng đó 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 thụ động lắng nghe và phản hồi các yêu cầu từ Client.

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

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

Quản lý tập trung cho phép lưu trữ dữ liệu trên Server, thay vì phân tán trên nhiều máy, giúp việc truy xuất và cập nhật dữ liệu trở nên đơn giản và hiệu quả hơn.

Việc bảo trì trở nên dễ dàng hơn nhờ vào khả năng quản lý tập trung, cho phép thực hiện hầu hết các công việc bảo trì 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 cách liền mạch 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 trạm hoặc trên các trạm khác nhau Chúng là các đối tượng logic tách biệt, giao tiếp qua mạng để thực hiện công việc 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

 Hoạt động theo kiểu giao thức bất đối xứng

 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áy chủ có khả năng chia sẻ tài nguyên cho nhiều khách hàng cùng một lúc, đồng thời điều phối việc truy cập của các khách hàng đến các tài nguyên chung.

Lập trình JAVA

Java là một ngôn ngữ lập trình hướng đối tượng (OOP) nổi bật Khác với nhiều ngôn ngữ lập trình khác, Java biên dịch mã nguồn thành bytecode thay vì mã máy, cho phép bytecode được thực thi trong môi trường runtime.

Bằng cách này, Java thường chạy nhanh hơn những ngôn ngữ lập trình thông dịch khác như Python, Perl, 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) cho phép các chương trình được biên dịch thành mã máy có thể chạy trên nhiều kiến trúc CPU khác nhau Trước đây, mỗi chương trình chỉ có thể hoạt động trên một loại CPU cụ thể, như CPU Intel, Solarix hay Macintosh Tuy nhiên, với JVM, các chương trình có thể chạy trên nhiều hệ điều hành như Microsoft Windows, Unix, Linux và OS/2 mà không cần biên dịch lại cho từng kiến trúc.

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

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 và chạy chương trình Chương trình viết bằng Java sẽ được biên dịch thành mã bytecode, và máy ảo Java sẽ chuyển đổi mã này thành mã máy tương ứng Sun Microsystems 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à ngôn ngữ lập trình kết hợp cả biên dịch và thông dịch Các chương trình Java, với đuôi *.java, được biên dịch thành tệp *.class trước khi được trình thông dịch chuyển đổi thành mã máy Điều này giúp Java có tính độc lập nền tảng.

Java là một ngôn ngữ lập trình cho phép các chương trình chạy 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) Khả năng này được gọi 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à ngôn ngữ lập trình hoàn toàn hướng đối tượng Trong Java, mọi thứ đề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 chủ đề sẽ được thảo luận chi tiết hơn ở phần sau Đa nhiệm và đa luồng (MultiTasking – Multithreading) là hai khía cạnh quan trọng trong lập trình Java.

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 chạy 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 phát triển bằng ngôn ngữ Java có khả năng hoạt động trên bất kỳ máy tính hay hệ điều hành nào có máy ảo Java Nguyên tắc "Viết một lần, chạy mọi nơi" (Write Once, Run Anywhere) cho phép các lập trình viên dễ dàng triển khai ứng dụng của mình mà không cần điều chỉnh mã nguồn cho từng nền tảng khác nhau.

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ờ vào sự hỗ trợ của Sun Microsystem, cung cấp nhiều công cụ và thư viện lập trình phong phú Các phiên bản Java như J2SE (Java 2 Standard Edition) giúp phát triển ứng dụng đơn và client-server, trong khi J2EE (Java 2 Enterprise Edition) tập trung vào các ứ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.

 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.

 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 Server.

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 cho phép thêm, xóa, sửa và cập nhật thông tin qua 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 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 yêu cầu của khách hàng.

3.4 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), NAPLOIXE(110), NAPDLBD(120).

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), NHANLOIXE(111), NHANDLBD(121).

 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ề

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: 23/12/2023, 22:15

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

TÀI LIỆU LIÊN QUAN

w