用java写超市商品信息管理系统,并实现增删改查
时间: 2024-03-18 21:38:33 浏览: 77
好的,这是一个比较常见的Java项目,我可以给你提供一些思路和代码示例。
1. 需求分析
超市商品信息管理系统主要包括以下功能:
- 商品信息的录入、删除、修改和查询
- 商品分类管理
- 商品库存管理
2. 构建数据库
首先我们需要定义数据库表结构,可以使用MySQL或者其他关系型数据库。以下是一个简单的表结构:
```
CREATE TABLE goods (
id INT(11) NOT NULL AUTO_INCREMENT,
name VARCHAR(50) NOT NULL,
price DECIMAL(10,2) NOT NULL,
category_id INT(11) NOT NULL,
stock INT(11) NOT NULL,
PRIMARY KEY (id)
);
CREATE TABLE categories (
id INT(11) NOT NULL AUTO_INCREMENT,
name VARCHAR(50) NOT NULL,
PRIMARY KEY (id)
);
```
3. Java代码实现
下面是一个简单的Java代码示例,包含了商品信息的增删改查功能。
```java
import java.sql.*;
public class GoodsManager {
// 连接数据库的信息
private static final String URL = "jdbc:mysql://localhost:3306/test";
private static final String USERNAME = "root";
private static final String PASSWORD = "password";
// 增加商品信息
public void addGoods(String name, double price, int categoryId, int stock) throws SQLException {
Connection conn = DriverManager.getConnection(URL, USERNAME, PASSWORD);
PreparedStatement stmt = conn.prepareStatement("INSERT INTO goods (name, price, category_id, stock) VALUES (?, ?, ?, ?)");
stmt.setString(1, name);
stmt.setDouble(2, price);
stmt.setInt(3, categoryId);
stmt.setInt(4, stock);
stmt.executeUpdate();
stmt.close();
conn.close();
}
// 删除商品信息
public void deleteGoods(int id) throws SQLException {
Connection conn = DriverManager.getConnection(URL, USERNAME, PASSWORD);
PreparedStatement stmt = conn.prepareStatement("DELETE FROM goods WHERE id = ?");
stmt.setInt(1, id);
stmt.executeUpdate();
stmt.close();
conn.close();
}
// 修改商品信息
public void updateGoods(int id, String name, double price, int categoryId, int stock) throws SQLException {
Connection conn = DriverManager.getConnection(URL, USERNAME, PASSWORD);
PreparedStatement stmt = conn.prepareStatement("UPDATE goods SET name = ?, price = ?, category_id = ?, stock = ? WHERE id = ?");
stmt.setString(1, name);
stmt.setDouble(2, price);
stmt.setInt(3, categoryId);
stmt.setInt(4, stock);
stmt.setInt(5, id);
stmt.executeUpdate();
stmt.close();
conn.close();
}
// 查询商品信息
public ResultSet queryGoods(String name, int categoryId) throws SQLException {
Connection conn = DriverManager.getConnection(URL, USERNAME, PASSWORD);
PreparedStatement stmt = conn.prepareStatement("SELECT * FROM goods WHERE name LIKE ? AND category_id = ?");
stmt.setString(1, "%" + name + "%");
stmt.setInt(2, categoryId);
ResultSet rs = stmt.executeQuery();
return rs;
}
}
```
以上代码实现了增删改查商品信息的功能,具体使用方法可以根据自己的需求进行调整。
阅读全文