LỜI MỞ ĐẦUCông nghệ ngày một phát triển là lúc đòi hỏi các công ty, tổ chức, cửa hàng kinhdoanh phải chuyển đổi hình thức quản lý, marketing sang việc sử dụng các nền tảngcông nghệ thông
TỔNG QUAN VỀ ĐỀ TÀI
Tổng quan về Java Swing:
Java Swing, một thành phần của Java Foundation Classes (JFC), được thiết kế để phát triển ứng dụng Java quy mô lớn cho doanh nghiệp Được xây dựng trên nền tảng Abstract Windowing Toolkit (AWT) Application Interface (API) và viết bằng Java, Swing nổi bật với tính năng độc lập nền tảng và các thành phần nhẹ hơn so với AWT.
JFC là một tập hợp các thành phần giao diện mà được phát triển cho các ứng dụng Desktop (ứng dụng đơn lẻ trên từng máy).
Java Swing là một bộ API quan trọng, cung cấp giao diện người dùng đồ họa (GUI) cho các ứng dụng Java Được biết đến như một bộ công cụ widget Java GUI, Swing cho phép phát triển các giao diện người dùng phong phú và linh hoạt.
Java Swing, được phát triển dựa trên các API trước đó như Bộ công cụ trừu tượng Windows (AWT), cung cấp các thành phần GUI phong phú và phức tạp hơn AWT Các thành phần này đa dạng, từ nhãn đơn giản đến cây và bảng phức tạp Gói javax.swing cung cấp nhiều lớp quan trọng cho Java Swing API, bao gồm JButton, JTextField, JTextArea, JRadioButton, JCheckbox, JMenu và JColorChooser.
Gói javax.swing bao gồm các lớp interface cải tiến, mở rộng các thành phần của gói java.awt, giúp tạo ra giao diện người dùng đẹp hơn Quan trọng là gói javax.swing không thay thế gói java.awt, mà có thể được sử dụng đồng thời trong cùng một giao diện.
Các thành phần trong gói javax.swing đều bắt đầu bằng ký tự J, chẳng hạn như JButton và JFrame JFrame có cấu trúc nhiều tầng, với mỗi tầng tương ứng với một Container Tầng trung gian, được gọi là ContentPane, thường được sử dụng để chứa các đối tượng hiển thị trên giao diện.
2 Sơ đồ phân cấp lớp Java Swing:
Các phương thức thường dùng của lớp Component:
The method `public void add(Component c)` allows you to add a component to another component The `public void setSize(int width, int height)` method is used to define the dimensions of a component To establish a layout manager for a component, you can use the `public void setLayout(LayoutManager m)` method Finally, the `public void setVisible(boolean b)` method controls the visibility of the component.
Nó theo mặc định là false (ẩn)
3 Sự khác nhau giữa Java AWT và Java Swing:
Các thành phần AWT phụ thuộc vào nền tảng, trong khi các thành phần Java Swing độc lập với nền tảng AWT có trọng lượng nặng hơn, còn Swing thì gọn nhẹ Một điểm khác biệt quan trọng là AWT không hỗ trợ tính năng pluggable Look and Feel, trong khi Swing lại hỗ trợ tính năng này.
AWT cung cấp ít thành phần hơn Swing Swing cung cấp các thành phần mạnh mẽ hơn như table, list, scrollpanes, colorchooser, tabbedpane
AWT không theo sau MVC (Model View
Controller), ở đây model biểu diễn dữ liệu, view biểu diễn sự trình bày và controller hoạt động như một Interface giữa model và view
4 Tính năng của Java Swing:
Swing có trọng lượng nhẹ, với các thành phần độc lập khỏi API hệ điều hành gốc Điều này được thực hiện nhờ vào việc các điều khiển API Swing được kết xuất chủ yếu bằng mã Java thuần túy, thay vì dựa vào các cuộc gọi hệ điều hành cơ bản.
- Rich Controls - Swing cung cấp một bộ điều khiển nâng cao phong phú như Tree, TabbedPane, thanh trượt, colorpicker và điều khiển bảng.
- Tùy biến cao - các điều khiển xoay có thể được tùy chỉnh theo một cách rất dễ dàng và độc lập với biểu diễn bên trong.
- Pluggable look-and-feel - Swing dựa nhìn GUI Application và có thể thay đổi thời gian chạy, dựa trên các giá trị có sẵn.
CƠ SỞ LÝ THUYẾT
Ngôn ngữ lập trình Java
Java là một ngôn ngữ lập trình hướng đối tượng, phổ biến trong phát triển phần mềm, trang web, game và ứng dụng di động Được sáng lập bởi James Gosling và đồng nghiệp tại Sun MicroSystem vào năm 1991, Java ban đầu mang tên Oak và được thiết kế để viết phần mềm cho các sản phẩm gia dụng Java chính thức ra mắt vào năm 1994 và đã được Oracle mua lại từ Sun MicroSystem vào năm 2010.
Java được phát triển với nguyên tắc "Viết một lần, thực thi khắp nơi" (WORA), cho phép các ứng dụng Java chạy trên nhiều nền tảng khác nhau Để thực hiện điều này, cần có môi trường thực thi phù hợp hỗ trợ nền tảng mà ứng dụng đang chạy.
Ngôn ngữ lập trình Java là một ngôn ngữ vừa biên dịch vừa thông dịch Khi lập trình viên viết mã, hệ thống sẽ tạo ra tệp java Sau khi biên dịch, mã nguồn được chuyển đổi thành mã byte code Máy ảo Java (Java Virtual Machine) sẽ thực hiện việc thông dịch mã byte code này thành mã máy (native code) khi chương trình được yêu cầu chạy.
Các loại ứng dụng phát triển bằng Java mang lại lợi ích lớn nhờ khả năng chạy trên nhiều nền tảng khác nhau, miễn là có hỗ trợ từ JVM Tuy nhiên, nhược điểm của Java là quá trình thực thi mã chậm hơn so với các ngôn ngữ biên dịch khác, mặc dù tốc độ này vẫn nằm trong mức chấp nhận được.
Apache Neabeans
NetBeans IDE là một công cụ mã nguồn mở miễn phí, được đánh giá cao bởi các tính năng hỗ trợ phát triển ứng dụng, đặc biệt là cho ngôn ngữ Java Tuy nhiên, phần mềm này yêu cầu máy tính có cấu hình mạnh do dung lượng lớn NetBeans IDE tương thích với các hệ điều hành như Windows, Linux và MacOS, đồng thời hỗ trợ nhiều ngôn ngữ lập trình khác nhau như JavaScript, C/C++, Python, Groovy, Ruby và PHP Phiên bản mới nhất 12.3 của NetBeans IDE đã được nâng cấp với nhiều tính năng cải tiến.
- Cải tiến công cụ soạn thảo Profiler, Java.
- Có ECMAScript 6, đồng thời cho phép thử nghiệm ECMAScript 7.
- Hỗ trợ Docker và PHP 7.
Để cài đặt NetBeans IDE, máy tính cần có cấu hình JDK sẵn có NetBeans IDE được chia thành nhiều gói, cho phép người dùng tải và cài đặt từng phần phù hợp với nhu cầu sử dụng, giúp tiết kiệm dung lượng Tương tự như Notepad++, NetBeans IDE sở hữu cú pháp tốt và nhiều tính năng nổi bật như căn chỉnh mã nguồn tự động, hỗ trợ SVN và Remote FTP Các tính năng chính của Apache NetBeans rất đa dạng và hữu ích cho lập trình viên.
- Hỗ trợ đa dạng ngôn ngữ lập trình.
- Chức năng chỉnh sửa mã nguồn tự động.
- Giao diện trực quan, dễ sử dụng.
- Có thể xử lý các vấn đề lỗi mạng từ xa.
- Cho phép thử nghiệm tính năng thiết lập giao diện đồ họa.
- Có tính năng tìm kiếm nhanh, biên dịch tự động; hỗ trợ nền tảng cho website, máy chủ GlassFish cùng database.
Hướng dẫn cài đặt Apache Netbeans
Bước 1:Download Netbeans tại: https://netbeans.apache.org/
Bước 1: Download JDK tại: https://www.oracle.com/java/technologies/javase-downloads.html
Bước 3: Tiến hành cài đặt chương trình như các chương trình thông thường khác.
Sơ đồ tổng quan hoạt động của phần mềm
Sơ đồ tổng quan hoạt động
KẾT QUẢ THỰC NGHIỆM
Giao diện Login
Hình 3.1 2 Giao diện khi Login fails
Giao diện Home
Hình 3.1 3 Giao diện trang Home
Hình 3.1 4 Thanh chọn loại món
Hình 3.1 5 Giao diện đã chọn món
Hình 3.1 6 Giao diện thanh toán
Hình 3.1 7 Hình Sau khi chọn Delete Item
Giao diện Product MNG
Hình 3.1 8 Giao diện Sản phẩm
Hình 3.1 10 Giao diện chọn Food
Hình 3.1 11Giao diện chọn Drink
Hình 3.1 12 Giao diện chọn Add
Hình 3.1 14 Giao diện Edit thành công
Hình 3.1 15 Giao diện chọn Delete
Hình 3.1 16 Giao diện chọn Find
Giao diện quản lý tài khoản
Hình 3.1 19 Giao diện quản lý tài khoản của Admin
Hình 3.1 20 Giao diện Add User
Hình 3.1 22 Giao diện Edit thành công
Giao diện lịch sử hóa đơn
Hình 3.1 24 Giao diện lịch sử hóa đơn