首先,我们需要创建一个数据库表来存储物流信息。以下是一个简单的SQL语句来创建一个名为`logistics`的表: ```sql CREATE TABLE logistics ( id INT PRIMARY KEY AUTO_INCREMENT, package_name VARCHAR(255) NOT NULL, status ENUM('待发货', '运输中', '已签收') NOT NULL ); ``` 接下来,我们将使用Java和JDBC(Java Database Connectivity)来连接数据库并实现查询物流状态和添加包裹的功能。以下是一个简单的示例: 1. 导入所需的库: ```java import java.sql.Connection; import java.sql.DriverManager; import java.sql.PreparedStatement; import java.sql.ResultSet; import java.sql.SQLException; ``` 2. 创建一个`LogisticsManagementSystem`类: ```java public class LogisticsManagementSystem { private static final String DB_URL = "jdbc:mysql://localhost:3306/your_database_name"; private static final String DB_USER = "your_username"; private static final String DB_PASSWORD = "your_password"; public static void main(String[] args) { // 添加包裹示例 addPackage("测试包裹", "待发货"); // 查询物流状态示例 queryPackageStatus("测试包裹"); } public static void addPackage(String packageName, String status) { try (Connection connection = DriverManager.getConnection(DB_URL, DB_USER, DB_PASSWORD)) { String sql = "INSERT INTO logistics (package_name, status) VALUES (?, ?)"; PreparedStatement preparedStatement = connection.prepareStatement(sql); preparedStatement.setString(1, packageName); preparedStatement.setString(2, status); preparedStatement.executeUpdate(); System.out.println("包裹添加成功"); } catch (SQLException e) { e.printStackTrace(); } } public static void queryPackageStatus(String packageName) { try (Connection connection = DriverManager.getConnection(DB_URL, DB_USER, DB_PASSWORD)) { String sql = "SELECT status FROM logistics WHERE package_name = ?"; PreparedStatement preparedStatement = connection.prepareStatement(sql); preparedStatement.setString(1, packageName); ResultSet resultSet = preparedStatement.executeQuery(); if (resultSet.next()) { String status = resultSet.getString("status"); System.out.println("包裹 " + packageName + " 的状态为:" + status); } else { System.out.println("未找到该包裹"); } } catch (SQLException e) { e.printStackTrace(); } } } ``` 注意:请将`your_database_name`、`your_username`和`your_password`替换为您的实际数据库名称、用户名和密码。 这个示例中,我们创建了一个`LogisticsManagementSystem`类,其中包含两个方法:`addPackage`用于添加包裹,`queryPackageStatus`用于查询包裹的物流状态。在`main`方法中,我们调用这两个方法来演示它们的功能。 [2024-06-25 08:22:27 | AI写代码神器 | 785点数解答]