订餐系统源码 java_javaweb订餐系统源码:代码示例

xl1407

温馨提示:这篇文章已超过241天没有更新,请注意相关的内容是否还可用!

订餐系统源码 java_javaweb订餐系统源码:代码示例

订餐系统是一个常见的网页应用程序,它允许用户在线订购餐点,并提供了管理订单和菜单的功能。下面是一个使用Java和JavaWeb开发的订餐系统的源代码示例。

我们需要创建一个数据库来存储菜单和订单信息。我们可以使用MySQL数据库,并创建两个表,一个用于存储菜单信息,另一个用于存储订单信息。

CREATE TABLE menu (

id INT PRIMARY KEY AUTO_INCREMENT,

name VARCHAR(50) NOT NULL,

price DECIMAL(8, 2) NOT NULL

);

CREATE TABLE orders (

id INT PRIMARY KEY AUTO_INCREMENT,

menu_id INT NOT NULL,

quantity INT NOT NULL,

total_price DECIMAL(8, 2) NOT NULL,

FOREIGN KEY (menu_id) REFERENCES menu(id)

);

接下来,我们可以创建一个Java类来表示菜单项。这个类将具有id、name和price属性,并提供相应的getter和setter方法。

public class MenuItem {

private int id;

private String name;

private double price;

public int getId() {

return id;

}

public void setId(int id) {

this.id = id;

}

public String getName() {

return name;

}

public void setName(String name) {

this.name = name;

}

public double getPrice() {

return price;

}

public void setPrice(double price) {

this.price = price;

}

}

然后,我们可以创建一个Java类来处理菜单相关的操作,如添加菜单项、获取菜单列表等。这个类将使用JDBC连接到数据库,并执行相应的SQL语句。

import java.sql.*;

import java.util.ArrayList;

import java.util.List;

public class MenuDao {

private static final String URL = "jdbc:mysql://localhost:3306/restaurant";

private static final String USERNAME = "root";

private static final String PASSWORD = "password";

public List<MenuItem> getMenu() {

List<MenuItem> menu = new ArrayList<>();

try (Connection conn = DriverManager.getConnection(URL, USERNAME, PASSWORD);

Statement stmt = conn.createStatement();

ResultSet rs = stmt.executeQuery("SELECT * FROM menu")) {

while (rs.next()) {

MenuItem item = new MenuItem();

item.setId(rs.getInt("id"));

item.setName(rs.getString("name"));

item.setPrice(rs.getDouble("price"));

menu.add(item);

}

} catch (SQLException e) {

e.printStackTrace();

}

return menu;

}

public void addMenuItem(MenuItem item) {

try (Connection conn = DriverManager.getConnection(URL, USERNAME, PASSWORD);

PreparedStatement stmt = conn.prepareStatement("INSERT INTO menu (name, price) VALUES (?, ?)")) {

stmt.setString(1, item.getName());

stmt.setDouble(2, item.getPrice());

stmt.executeUpdate();

} catch (SQLException e) {

e.printStackTrace();

}

}

}

我们可以创建一个Java类来处理订单相关的操作,如创建订单、计算总价等。这个类也将使用JDBC连接到数据库,并执行相应的SQL语句。

import java.sql.*;

public class OrderDao {

private static final String URL = "jdbc:mysql://localhost:3306/restaurant";

private static final String USERNAME = "root";

private static final String PASSWORD = "password";

public void createOrder(int menuId, int quantity) {

try (Connection conn = DriverManager.getConnection(URL, USERNAME, PASSWORD);

PreparedStatement stmt = conn.prepareStatement("INSERT INTO orders (menu_id, quantity, total_price) VALUES (?, ?, ?)")) {

MenuItem item = getMenuById(menuId);

double totalPrice = item.getPrice() * quantity;

stmt.setInt(1, menuId);

stmt.setInt(2, quantity);

stmt.setDouble(3, totalPrice);

stmt.executeUpdate();

} catch (SQLException e) {

e.printStackTrace();

}

}

private MenuItem getMenuById(int menuId) {

MenuItem item = new MenuItem();

try (Connection conn = DriverManager.getConnection(URL, USERNAME, PASSWORD);

PreparedStatement stmt = conn.prepareStatement("SELECT * FROM menu WHERE id = ?")) {

stmt.setInt(1, menuId);

ResultSet rs = stmt.executeQuery();

if (rs.next()) {

item.setId(rs.getInt("id"));

item.setName(rs.getString("name"));

item.setPrice(rs.getDouble("price"));

}

} catch (SQLException e) {

e.printStackTrace();

}

return item;

}

}

以上就是一个简单的订餐系统的JavaWeb源代码示例。通过这些代码,我们可以实现菜单的添加和获取,以及订单的创建和总价计算等功能。

文章版权声明:除非注明,否则均为莫宇前端原创文章,转载或复制请以超链接形式并注明出处。

取消
微信二维码
微信二维码
支付宝二维码