数据库设计
- 创建一个名为
products
的表,包含以下字段:id
(自增长的整数,作为主键)name
(文本字段,表示产品名称)quantity
(整数字段,表示产品数量)
系统功能设计
- 用户界面应提供以下功能:
- 添加产品
- 删除产品
- 更新产品
- 搜索产品
系统总体结构设计
- 程序由两部分组成:
- 与MySQL数据库进行连接和操作的后台代码
- 提供用户界面的GUI
系统数据结构设计
- 创建一个
Product
类,表示产品信息,包含以下字段:name
(文本字段,表示产品名称)quantity
(整数字段,表示产品数量)
系统安全设计
- 对数据库进行身份验证和授权,确保只有授权用户可以访问和修改数据。
import java.sql.*;
import java.util.*;
import javax.swing.*;
import java.awt.*;
public class InventoryManagementSystem extends JFrame {
private Connection conn;
private Statement stmt;
public InventoryManagementSystem() {
try {
// 连接到数据库
conn = DriverManager.getConnection("jdbc:mysql://localhost:3306/your_database_name", "username", "password");
stmt = conn.createStatement();
// 创建GUI
createGUI();
} catch (SQLException e) {
e.printStackTrace();
}
}
private void createGUI() {
// 设置主窗口
InventoryManagementSystemFrame frame = new InventoryManagementSystemFrame();
frame.setSize(800, 600);
frame.setVisible(true);
frame.setDefaultCloseOperation(EXIT_ON_CLOSE);
}
public static void main(String[] args) {
new InventoryManagementSystem();
}
}
class InventoryManagementSystemFrame extends JFrame {
private JTable table;
private DefaultTableModel model;
private JScrollPane scrollPane;
public InventoryManagementSystemFrame() {
// 创建表格模型
model = new DefaultTableModel();
model.addColumn("产品");
model.addColumn("数量");
// 创建表格和滚动面板
table = new JTable(model);
scrollPane = new JScrollPane(table);
// 创建添加按钮
JButton addButton = new JButton("添加");
addButton.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent e) {
// 添加产品的逻辑
}
});
// 创建删除按钮
JButton removeButton = new JButton("删除");
removeButton.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent e) {
// 删除产品的逻辑
}
});
// 创建更新按钮
JButton updateButton = new JButton("更新");
updateButton.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent e) {
// 更新产品的逻辑
}
});
// 创建搜索按钮
JButton searchButton = new JButton("搜索");
searchButton.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent e) {
// 搜索产品的逻辑
}
});
// 创建主面板和布局
JPanel mainPanel = new JPanel(new BorderLayout());
mainPanel.add(scrollPane, BorderLayout.CENTER);
mainPanel.add(addButton, BorderLayout.NORTH);
mainPanel.add(removeButton, BorderLayout.WEST);
mainPanel.add(updateButton, BorderLayout.EAST);
mainPanel.add(searchButton, BorderLayout.SOUTH);
// 设置主窗口和面板
setContentPane(mainPanel);
pack();
}
}