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

Đồ Án cơ sở 1 Ứng dụng quản lí bãi giữ xe

29 0 0
Tài liệu đã được kiểm tra trùng lặp

Đ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 đề Ứng Dụng Quản Lí Bãi Giữ Xe
Tác giả Phạm Công Hiền, Trần Công Minh
Người hướng dẫn ThS. Ngô Lê Quân
Trường học Trường Đại Học Công Nghệ Thông Tin & Truyền Thông Việt Hàn
Chuyên ngành Khoa Khoa Học Máy Tính
Thể loại Đồ án cơ sở 1
Năm xuất bản 2024
Thành phố Đà Nẵng
Định dạng
Số trang 29
Dung lượng 2,08 MB

Nội dung

1.1.3 Vai trò Java đóng vai trò quan trọng trong phát triển ứng dụng đa nền tảng, web và doanh nghiệp, di động, hệ thống nhúng, máy chủ và điện toán đám mây, cũng như trong phát triển ph

Trang 1

TRƯỜNG ĐẠI HỌC CÔNG NGHỆ THÔNG TIN &

TRUYỀN THÔNG VIỆT HÀN

Khoa Khoa Học Máy Tính

ĐỒ ÁN CƠ SỞ 1

Sinh viên thực hiện: Phạm Công Hiền

Trang 2

TRƯỜNG ĐẠI HỌC CÔNG NGHỆ THÔNG TIN &

TRUYỀN THÔNG VIỆT HÀN

Khoa Khoa Học Máy Tính

ĐỒ ÁN CƠ SỞ 1

Sinh viên thực hiện: Phạm Công Hiền

Trang 3

NHẬN XÉT CỦA GIẢNG VIÊN HƯỚNG DẪN

Đà Nẵng, ngày 31 tháng 5 năm 2024 Giảng viên hướng dẫn

Trang 4

LỜI CẢM ƠN

Em xin gửi lời cảm ơn chân thành đến tất cả những người đã đóng góp và hỗ trợ trong quá trình thực hiện đồ án của em Đây là một cơ hội quan trọng để em chia sẻ những kiến thức và kỹ năng mà em đã tích lũy trong suốt thời gian học tập Em cũng xin chân thành cảm ơn đến giảng viên hướng dẫn của em với sự chỉ dẫn và hỗ trợ tận tâm của cô đã giúp em có những hướng phân tích và nghiên cứu trong quá trình làm đồ án của mình Em cũng xin chân thành cảm ơn ban lãnh đạo nhà trường

đã cho em cơ hội được học hỏi những kiến thức kinh nghiệm từ các giảng viên ưu

tú để em có thêm các kiến thức trong quá trình làm đồ án.

Em xin trân trọng cảm ơn

Sinh viên Sinh viên

Phạm Công Hiền Trần Công Minh

Trang 5

MỤC LỤC

DANH MỤC CÁC HÌNH ẢNH 4

DANH MỤC CÁC TỪ VIẾT TẮT 4

MỞ ĐẦU 5

1 Giới thiệu 5

2 Mục tiêu của đề tài 5

3 Đối tượng, phạm vi và phương pháp tiếp cận 5

4 Bố cục của đề tài 6

CHƯƠNG 1 TỔNG QUAN VỀ CÔNG CỤ VÀ CÔNG NGHỆ 7

1.1 JAVA 7

1.1.1 Khái niệm 7

1.1.2 Lịch sử phát triển 7

1.1.3 Vai trò 8

1.1.4 Đặc điểm 8

1.1.5 Cấu trúc 9

1.1.6 Ví dụ 9

1.2 SQL……… 11

1.2.1 Khái niệm 11

1.1.2 Lịch sử phát triển 12

1.2.3 Vai trò 13

1.2.4 Đặc điểm 13

1.2.5 Cấu trúc 13

1.2.6 Ví dụ 14

1.3 Java Swing 15

1.3.1 Khái niệm 15

1.3.2 Lịch sử phát triển 15

1.3.3 Vai trò 16

1.3.4 Đặc điểm 16

1.3.5 Cấu trúc 17

1.3.6 Ví dụ 18

CHƯƠNG 2 PHÂN TÍCH VÀ THIẾT KẾ HỆ THỐNG 19

2.1 Phân tích hệ thống 19

Trang 6

2.1.1 Chức năng 19

2.1.2 Giao diện 20

2.2 Thiết kế 21

CHƯƠNG 3 XÂY DỰNG ỨNG DỤNG QUẢN LÍ BÃI GIỮ XE 22

3.1 Sơ lược về ứng dụng 22

3.1.1 Trang đăng nhập 22

3.1.2 Giao diện ứng dụng 22

KẾT LUẬN VÀ HƯỚNG PHÁT TRIỂN 25

1 Kết luận 25

2 Hướng phát triển 25

TÀI LIỆU THAM KHẢO 25

Trang 7

DANH MỤC CÁC HÌNH ẢNH

Hình 1 Ví dụ Java cơ bản 10

Hình 2 Kết quả Java cơ bản 11

Hình 3 Ví dụ Bảng SQL 14

Hình 4 Ví dụ câu lệnh SQL cơ bản 14

Hình 5 Kết quả SQL cơ bản… 14

Hình 6 Ví dụ Java Swingt cơ bản 18

Hình 7 Kết quả Java Swingt cơ bản 18

Hình 8 Giao diện đăng nhập 22

Hình 9 Giao diện admin 22

Hình 10 Trang quản lí nhân viên 23

Hình 11 Thanh toán hoá đơn 23

Hình 12 Trang thống kê 24

Hình 13 Trang quản lí bãi 24

Hình 14 Trang quản lí vé 25

Hình 15 Trang quản lí vị trí đỗ xe 25

DANH MỤC CÁC TỪ VIẾT TẮT

1 Structured Query Language SQL

JVM

JFC

JVM

Trang 8

MỞ ĐẦU

1 Giới thiệu

Trong bối cảnh đô thị hóa ngày càng phát triển, nhu cầu về quản lý các bãi giữ xe một cách hiệu quả và thông minh trở nên cấp thiết hơn bao giờ hết Bãi giữ xe không chỉ là nơi đỗ xe mà còn đóng vai trò quan trọng trong việc giảm thiểu ùn tắc giao thông và bảo đảm an toàn cho phương tiện của người dân.

Dự án này được triển khai nhằm đáp ứng nhu cầu đó, với mục tiêu tạo ra một ứng dụng quản lý bãi giữ xe thông minh, tiện dụng và hiệu quả Ứng dụng sẽ

hỗ trợ người quản lý bãi giữ xe trong việc theo dõi tình trạng bãi đỗ, quản lý

vé xe, thu phí và các chức năng khác một cách dễ dàng Đồng thời, người sử dụng cũng có thể dễ dàng tìm kiếm và đặt chỗ đỗ xe trước, tiết kiệm thời gian

và công sức.

Phần báo cáo này sẽ trình bày chi tiết về quá trình phát triển dự án, từ việc nghiên cứu và phân tích nhu cầu, thiết kế giao diện người dùng, đến triển khai và kiểm thử hệ thống Hy vọng rằng qua báo cáo này, quý thầy cô và các bạn sẽ có cái nhìn tổng quan và sâu sắc hơn về giải pháp mà nhóm chúng tôi

đề xuất, cũng như những lợi ích mà ứng dụng mang lại cho xã hội.

2 Mục tiêu của đề tài

- Tổng hợp các kiến thức đã học như: Java, JavaSwing, SQL,…

- Xây dựng giao diện ứng dụng thân thiện dễ sử dụng

- Có thêm kiến thức và kinh nghiệm giải quyết vấn đề trong quá trình làmsản phẩm

3 Đối tượng, phạm vi và phương pháp tiếp cận

a Đối tượng

Khách hàng mua sắm trực tuyến

- Cá nhân có nhu cầu mua sắm đa dạng, từ sản phẩm tiêu dùng hàng ngày đến cácmặt hàng chuyên biệt.- Người sử dụng phương tiện: Muốn tìm và đặt chỗ đỗ xenhanh chóng

- Cơ quan quản lý đô thị: Cần dữ liệu để quy hoạch và quản lý giao thông

b Phạm vi

Ứng dụng tập trung vào bãi giữ xe tư nhân và công cộng trong đô thị, với các chứcnăng quản lý vé xe, thu phí, và giám sát tình trạng bãi đỗ

Trang 9

c Phương pháp Tiếp cận

- Nghiên cứu nhu cầu: Khảo sát người dùng và người quản lý để xác định yêu cầu

- Thiết kế: Tạo giao diện trực quan bằng Java Swing, đảm bảo hệ thống bảo mật và

dễ sử dụng

- Phát triển: Sử dụng Java cho backend và SQL cho cơ sở dữ liệu

- Kiểm thử và triển khai: Thực hiện kiểm thử để đảm bảo ứng dụng hoạt động mượt

mà trước khi triển khai

- Đánh giá và cải tiến: Thu thập phản hồi từ người dùng và liên tục nâng cấp hệthống

4 Bố cục của đề tài

Sau phần Mở đầu, báo cáo được trình bày trong ba chương, cụ thể như sau:

Chương 1 Tổng quan về công cụ và công nghệ Trong chương này, báo

cáo trình bày các khái niệm, đặc điểm, công nghệ được sử dụng để làm ứng dụng.

Chương 2 Phân tích thiết kế Ứng dụng quản lí bãi giữ xe Nội dung

chương bao gồm các công đoạn để thiết kế ứng dụng và giải quyết các vấn đề.

Chương 3 Xây dựng Ứng dụng quản lí bãi giữ xe Chương này báo cáo

kết quả, các chức năng được cài đặt trong hệ thống

Cuối cùng là Kết luận, Tài liệu tham khảo liên quan đến quá trình làm đồ

án

Trang 10

CHƯƠNG 1 TỔNG QUAN VỀ CÔNG CỤ VÀ CÔNG NGHỆ

1.1 JAVA

1.1.1 Khái niệm

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 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 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 đó.

Java 2 và sự phát triển tiếp theo (1996-2006)

- 1996: Java Development Kit (JDK) 1.0 ra mắt.

- 1998: Java 2 (J2SE 1.2) giới thiệu nhiều cải tiến, bao gồm Swing.

- 2004: Java 5 (J2SE 5.0) ra mắt với Generics, Enhanced for Loop, và các công

cụ hỗ trợ.

Oracle và các phiên bản hiện đại (2007-nay)

- 2009: Oracle mua lại Sun Microsystems.

- 2011: Oracle phát hành Java SE 7.

- 2014: Java SE 8 ra mắt với Lambda Expressions và Stream API.

7

Trang 11

- 2017: Java 9 giới thiệu Project Jigsaw (modularity).

- 2018: Java 11, phiên bản LTS, được phát hành.

- 2021-2022: Các phiên bản như Java 16, Java 17 (LTS) tiếp tục được phát hành, mang lại nhiều cải tiến.

Java đã trải qua một quá trình phát triển dài và liên tục, trở thành một trong những ngôn ngữ lập trình phổ biến và được sử dụng rộng rãi nhất trên thế giới Với cộng đồng lớn mạnh và sự hỗ trợ liên tục từ Oracle, Java vẫn là lựa chọn hàng đầu cho nhiều ứng dụng từ web, di động đến hệ thống nhúng và điện toán đám mây

1.1.3 Vai trò

Java đóng vai trò quan trọng trong phát triển ứng dụng đa nền tảng, web và doanh nghiệp, di động, hệ thống nhúng, máy chủ và điện toán đám mây, cũng như trong phát triển phần mềm nguồn mở Java cung cấp tính linh hoạt, hiệu suất và bảo mật cao, là một trong những công nghệ phổ biến nhất trong cộng đồng lập trình hiện nay

1.1.4 Đặc điểm

1 Hướng đối tượng (OOP):

- Java là một ngôn ngữ lập trình hướng đối tượng, cho phép mô hình hóa các đốitượng thực tế vào trong mã nguồn, tạo ra mã dễ đọc, dễ hiểu và dễ bảo trì

2 Đa nền tảng (Platform-independent):

- Mã nguồn Java được biên dịch thành bytecode, có thể chạy trên bất kỳ hệ thốngnào có Java Virtual Machine (JVM), giúp việc phát triển ứng dụng đa nền tảng trởnên dễ dàng

3 Bảo mật cao:

- Java có một loạt các tính năng bảo mật như quản lý bộ nhớ động, kiểm soát truycập và cơ chế sandbox, giúp ngăn chặn các cuộc tấn công từ phía người dùng

4 Thu gọn và đơn giản:

- Java có cú pháp sáng sủa, dễ học và dễ sử dụng, với một số nguyên tắc căn bảnnhư kiểm tra kiểu tĩnh và quản lý bộ nhớ tự động

5 Bộ thư viện phong phú:

- Java có một bộ thư viện lớn, gồm hàng ngàn lớp và phương thức, cung cấp cáccông cụ và API cho nhiều mục đích khác nhau như xử lý chuỗi, giao tiếp mạng, đồhọa và cơ sở dữ liệu

Trang 12

1.1.5 Cấu trúc

package mypackage;

public class MyClass {

public static void main(String[] args) {

// Khai báo biến

Trang 13

Hình 1 Ví dụ Java cơ bản

10

Trang 14

Hình 2 Kết quả Java cơ bản

1.2 SQL

1.2.1 Khái niệm

SQL (Structured Query Language) là một ngôn ngữ tiêu chuẩn dùng để quản lý

và thao tác cơ sở dữ liệu quan hệ SQL cho phép người dùng thực hiện các thao tác khác nhau trên dữ liệu, bao gồm:

1 Truy vấn dữ liệu: Sử dụng lệnh SELECT để truy xuất dữ liệu từ một hoặc nhiều bảng dựa trên các điều kiện cụ thể.

2 Thêm dữ liệu: Sử dụng lệnh INSERT để thêm bản ghi mới vào bảng.

3 Cập nhật dữ liệu: Sử dụng lệnh UPDATE để sửa đổi dữ liệu hiện có trong bảng.

4 Xóa dữ liệu: Sử dụng lệnh DELETE để xóa bản ghi khỏi bảng.

5 Quản lý cơ sở dữ liệu: Bao gồm các lệnh như CREATE TABLE để tạo bảng mới, ALTER TABLE để thay đổi cấu trúc bảng, và DROP TABLE để xóa bảng khỏi cơ sở dữ liệu.

6 Kiểm soát quyền truy cập: Sử dụng các lệnh GRANT và REVOKE để cấp hoặc thu hồi quyền truy cập của người dùng đối với cơ sở dữ liệu SQL hỗ trợ các phép toán và hàm xử lý dữ liệu phức tạp, như tính toán tổng, trung bình, đếm số lượng bản ghi, và lọc dữ liệu theo điều kiện Nó cũng cho phép tạo và quản lý các mối quan hệ giữa các bảng thông qua khóa chính (Primary Key) và khóa ngoại (Foreign Key).

Nhờ tính linh hoạt và mạnh mẽ, SQL được sử dụng rộng rãi trong các hệ quản trị cơ sở dữ liệu (DBMS) như MySQL, PostgreSQL, Oracle, SQL Server, và SQLite.

11

Trang 15

1.1.2 Lịch sử phát triển

Lịch sử phát triển của SQL bắt đầu từ những năm 1970 và trải qua nhiều giai đoạnquan trọng:

1970: Khái niệm ban đầu:

- Edgar F Codd, một nhà khoa học máy tính tại IBM, xuất bản bài báo "ARelational Model of Data for Large Shared Data Banks," giới thiệu mô hình cơ sở

dữ liệu quan hệ Đây là nền tảng lý thuyết cho SQL

1973-1974: Nghiên cứu và phát triển:

- Donald D Chamberlin và Raymond F Boyce tại IBM phát triển một ngôn ngữtruy vấn dựa trên mô hình của Codd, ban đầu gọi là SEQUEL (Structured EnglishQuery Language) Sau đó, do vấn đề bản quyền, tên này được rút gọn thành SQL

1978: Phiên bản đầu tiên:

- IBM phát hành hệ thống cơ sở dữ liệu thử nghiệm System R, sử dụng SQL làmngôn ngữ truy vấn Đây là một trong những hệ thống đầu tiên sử dụng SQL vàchứng minh được tính khả thi của mô hình cơ sở dữ liệu quan hệ

1980s: Thương mại hóa:

- Oracle (công ty phần mềm) phát hành Oracle V2 vào năm 1979, trở thành hệthống cơ sở dữ liệu thương mại đầu tiên hỗ trợ SQL

- IBM phát hành DB2 vào đầu thập kỷ 1980, sử dụng SQL

- Các công ty khác như Microsoft và Sybase cũng bắt đầu phát triển các hệ thốngquản lý cơ sở dữ liệu hỗ trợ SQL

1986: Chuẩn hóa SQL:

- Viện Tiêu chuẩn Quốc gia Hoa Kỳ (ANSI) và Tổ chức Tiêu chuẩn hóa Quốc tế(ISO) công nhận SQL là một tiêu chuẩn Phiên bản chuẩn đầu tiên được gọi là SQL-86

- Phiên bản chuẩn này được mở rộng và cải tiến qua các năm với các phiên bảnnhư SQL-89, SQL-92 (SQL2), SQL:1999 (SQL3), SQL:2003, SQL:2008,SQL:2011, SQL:2016, và SQL:2019

SQL đã phát triển từ một công cụ nghiên cứu trở thành một tiêu chuẩn công nghiệptoàn cầu, được sử dụng rộng rãi trong các hệ thống quản lý cơ sở dữ liệu hiện đại

1.2.3 Vai trò

12

Trang 16

SQL (Structured Query Language) đóng vai trò quan trọng trong quản lý và thao tác

dữ liệu trong các hệ thống cơ sở dữ liệu quan hệ (RDBMS), với các vai trò chính nhưsau:

1 Truy vấn dữ liệu: Sử dụng lệnh SELECT để truy xuất và tổng hợp thông tin từcác bảng

2 Quản lý dữ liệu: Thêm (INSERT), cập nhật (UPDATE), và xóa (DELETE) dữliệu trong các bảng

3 Quản lý cấu trúc cơ sở dữ liệu: Tạo mới (CREATE), sửa đổi (ALTER), và xóa

bỏ (DROP) các đối tượng cơ sở dữ liệu như bảng, chỉ mục và views

4 Kiểm soát truy cập: Quản lý quyền truy cập với lệnh GRANT và REVOKE,bảo vệ dữ liệu khỏi truy cập trái phép

5 Đảm bảo tính toàn vẹn dữ liệu: Sử dụng các ràng buộc như PRIMARY KEY,FOREIGN KEY, UNIQUE, và CHECK để đảm bảo tính chính xác và toàn vẹncủa dữ liệu

6 Xử lý giao dịch: Quản lý các giao dịch với lệnh COMMIT, ROLLBACK, vàSAVEPOINT, đảm bảo tính nhất quán và an toàn của dữ liệu

Nhờ các vai trò này, SQL trở thành ngôn ngữ không thể thiếu trong quản lý cơ sở dữliệu quan hệ, cung cấp công cụ mạnh mẽ cho việc truy xuất, xử lý, và bảo vệ dữ liệu

1.2.4 Đặc điểm

- Tiêu chuẩn: Là ngôn ngữ tiêu chuẩn trong quản lý cơ sở dữ liệu quan hệ

- Dễ học và sử dụng: Cú pháp gần gũi với ngôn ngữ tự nhiên, dễ học và sửdụng

- Mạnh mẽ và linh hoạt: Cho phép truy vấn, quản lý dữ liệu, cấu trúc cơ sở dữliệu, và kiểm soát truy cập

- Di động và mở rộng: Có thể chạy trên nhiều hệ quản trị cơ sở dữ liệu và phùhợp với nhu cầu từ nhỏ đến lớn

- An toàn và bảo mật: Hỗ trợ bảo mật và kiểm soát truy cập thông qua các cơchế như GRANT và REVOKE

- Hỗ trợ giao dịch: Đảm bảo tính toàn vẹn và nhất quán của dữ liệu qua cácgiao dịch

Trang 18

1.3 Java Swing

1.3.1 Khái niệm

Java Swing là một bộ công cụ GUI (Graphical User Interface) tích hợp sẵn trongJava, được sử dụng để phát triển ứng dụng đồ họa trên nền tảng desktop Nó cungcấp một loạt các thành phần giao diện người dùng như JButton (nút bấm),JTextField (ô nhập liệu văn bản), JCheckBox (hộp kiểm), và JList (danh sách) đểxây dựng các giao diện người dùng phong phú và tương tác

Swing cũng cung cấp các lớp quản lý bố trí (LayoutManager) như BorderLayout,FlowLayout và GridLayout, giúp tổ chức và sắp xếp các thành phần trên cửa sổhoặc panel một cách linh hoạt

Mô hình sự kiện của Swing cho phép xử lý các sự kiện như nhấn nút, nhập dữ liệuhoặc di chuyển chuột một cách dễ dàng thông qua việc kết nối các đối tượng nghe(listener) với các thành phần giao diện người dùng

Một điểm mạnh của Swing là tính đa nền tảng của nó Mã Java Swing có thể chạytrên nhiều hệ điều hành khác nhau mà không cần sửa đổi, mang lại sự linh hoạt vàtiện lợi trong việc phát triển ứng dụng đa nền tảng

Cuối cùng, Swing cũng cho phép tuỳ chỉnh giao diện người dùng thông qua việc

áp dụng các "Look and Feel" khác nhau như Metal, Nimbus, hoặc Synth, giúp tạo

ra trải nghiệm người dùng đa dạng và hấp dẫn

1.3.2 Lịch sử phát triển

1 Khởi đầu (1997-1998): Java Swing ra đời như một phần của Java FoundationClasses (JFC), được giới thiệu vào năm 1997 với phiên bản JDK 1.2 Ban đầu, nóthừa hưởng một số ý tưởng từ AWT (Abstract Window Toolkit) nhưng cung cấpcác thành phần giao diện người dùng mạnh mẽ hơn và tích hợp mô hình sự kiệnnâng cao

2 Sự phát triển và ổn định (1999-2005): Trong giai đoạn này, Java Swing trở thànhmột phần quan trọng trong việc phát triển ứng dụng desktop Java Nhiều bản cậpnhật và cải tiến đã được thực hiện, bao gồm việc bổ sung các thành phần mới, cảithiện hiệu suất và khả năng tuỳ biến, và tối ưu hóa để tương thích tốt hơn trên cácnền tảng khác nhau

3 Challenges và sự cạnh tranh (2006-2010): Trong giai đoạn này, Java Swing phảiđối mặt với sự cạnh tranh từ các công nghệ khác như JavaFX cũng như sự gia tăngcủa các nền tảng web và di động Mặc dù vậy, Swing vẫn tiếp tục được sử dụngrộng rãi trong các ứng dụng desktop do tính linh hoạt và khả năng tùy biến cao củanó

15

Ngày đăng: 04/12/2024, 15:08

w