用Java写一个点餐ui窗口实现基本交互,并可以调用数据库中的表格数据
时间: 2024-09-14 14:06:00 浏览: 39
在Java中创建一个点餐UI窗口并实现基本交互,通常会用到Java Swing库来构建图形用户界面(GUI),并使用JDBC来连接和操作数据库。以下是实现该功能的基本步骤:
1. 创建数据库和表格:首先需要创建一个数据库,例如MySQL,并在其中创建一个用于存储菜单项的表。
```sql
CREATE DATABASE OrderSystem;
USE OrderSystem;
CREATE TABLE MenuItem (
id INT AUTO_INCREMENT PRIMARY KEY,
name VARCHAR(255) NOT NULL,
price DECIMAL(10, 2) NOT NULL,
description TEXT
);
```
2. 添加菜单项数据:向`MenuItem`表中添加一些初始数据。
```sql
INSERT INTO MenuItem (name, price, description) VALUES ('宫保鸡丁', 32.0, '经典的川菜');
INSERT INTO MenuItem (name, price, description) VALUES ('清蒸鲈鱼', 45.0, '新鲜鲈鱼蒸制');
-- 更多菜单项...
```
3. 编写Java程序:创建一个Java类,用于构建UI窗口,并包含数据库连接和操作的代码。
```java
import javax.swing.*;
import java.awt.event.*;
import java.sql.*;
public class OrderUI extends JFrame {
// UI组件定义
private JList<String> menuList;
private DefaultListModel<String> listModel;
private JButton addButton;
// 数据库连接信息
private static final String DB_URL = "jdbc:mysql://localhost:3306/OrderSystem";
private static final String USER = "yourUsername";
private static final String PASS = "yourPassword";
public OrderUI() {
// 初始化UI组件和布局...
// 设置监听器...
}
// 加载菜单项并显示在列表中
private void loadMenuItems() {
try {
// 加载数据库驱动
Class.forName("com.mysql.cj.jdbc.Driver");
// 连接数据库
Connection conn = DriverManager.getConnection(DB_URL, USER, PASS);
Statement stmt = conn.createStatement();
ResultSet rs = stmt.executeQuery("SELECT name, price FROM MenuItem");
// 将查询结果添加到列表中
while (rs.next()) {
String name = rs.getString("name");
String price = rs.getString("price");
listModel.addElement(name + " - ¥" + price);
}
rs.close();
stmt.close();
conn.close();
} catch (Exception e) {
e.printStackTrace();
}
}
// 其他方法,例如按钮事件处理等...
public static void main(String[] args) {
// 创建UI实例并显示
OrderUI frame = new OrderUI();
frame.setVisible(true);
}
}
```
4. 运行程序:编译并运行Java程序,将会看到一个包含菜单列表和按钮的UI窗口,用户可以从列表中选择菜品并进行点餐操作。
阅读全文