java➕mysql超市管理系统
时间: 2023-12-26 08:28:29 浏览: 76
小超市管理信息系统设计与实现 ssm java+mysql无论文.zip
基于Java和MySQL的超市商品管理系统可以实现对商品信息的录入、查询、修改和删除等功能。以下是一个简单的示例:
1. 创建数据库表
首先,我们需要在MySQL中创建一个名为"goods"的数据库,并在该数据库中创建一个名为"goods_info"的表,用于存储商品信息。表的结构可以包括商品编号、商品名称、商品价格等字段。
2. 连接数据库
在Java中,我们可以使用JDBC来连接MySQL数据库。首先,需要导入JDBC相关的库文件,然后使用以下代码建立与数据库的连接:
```java
import java.sql.*;
public class DatabaseConnection {
public static Connection getConnection() {
Connection conn = null;
String url = "jdbc:mysql://localhost:3306/goods";
String user = "root";
String password = "123456";
try {
Class.forName("com.mysql.jdbc.Driver");
conn = DriverManager.getConnection(url, user, password);
} catch (Exception e) {
e.printStackTrace();
}
return conn;
}
}
```
3. 商品信息录入
在Java中,我们可以使用Swing来设计用户界面,通过文本框和按钮等组件来实现商品信息的录入。当用户点击"保存"按钮时,我们可以将商品信息插入到数据库中。以下是一个简单的示例代码:
```java
import javax.swing.*;
import java.awt.*;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.sql.Connection;
import java.sql.PreparedStatement;
public class AddGoodsFrame extends JFrame {
private JTextField tfId;
private JTextField tfName;
private JTextField tfPrice;
public AddGoodsFrame() {
setTitle("添加商品");
setSize(300, 200);
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
setLocationRelativeTo(null);
JPanel panel = new JPanel();
panel.setLayout(new GridLayout(4, 2));
JLabel lbId = new JLabel("商品编号:");
tfId = new JTextField();
JLabel lbName = new JLabel("商品名称:");
tfName = new JTextField();
JLabel lbPrice = new JLabel("商品价格:");
tfPrice = new JTextField();
JButton btnSave = new JButton("保存");
btnSave.addActionListener(new ActionListener() {
@Override
public void actionPerformed(ActionEvent e) {
String id = tfId.getText();
String name = tfName.getText();
double price = Double.parseDouble(tfPrice.getText());
Connection conn = DatabaseConnection.getConnection();
String sql = "INSERT INTO goods_info (id, name, price) VALUES (?, ?, ?)";
try {
PreparedStatement pstmt = conn.prepareStatement(sql);
pstmt.setString(1, id);
pstmt.setString(2, name);
pstmt.setDouble(3, price);
pstmt.executeUpdate();
JOptionPane.showMessageDialog(null, "保存成功");
pstmt.close();
conn.close();
} catch (Exception ex) {
ex.printStackTrace();
}
}
});
panel.add(lbId);
panel.add(tfId);
panel.add(lbName);
panel.add(tfName);
panel.add(lbPrice);
panel.add(tfPrice);
panel.add(btnSave);
add(panel);
setVisible(true);
}
public static void main(String[] args) {
new AddGoodsFrame();
}
}
```
4. 商品信息查询
在Java中,我们可以使用SQL语句来查询数据库中的商品信息,并将查询结果显示在表格中。以下是一个简单的示例代码:
```java
import javax.swing.*;
import java.awt.*;
import java.sql.Connection;
import java.sql.ResultSet;
import java.sql.Statement;
import javax.swing.table.DefaultTableModel;
public class QueryGoodsFrame extends JFrame {
private JTable table;
public QueryGoodsFrame() {
setTitle("查询商品");
setSize(400, 300);
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
setLocationRelativeTo(null);
JPanel panel = new JPanel();
panel.setLayout(new BorderLayout());
Connection conn = DatabaseConnection.getConnection();
String sql = "SELECT * FROM goods_info";
try {
Statement stmt = conn.createStatement();
ResultSet rs = stmt.executeQuery(sql);
DefaultTableModel model = new DefaultTableModel();
model.addColumn("商品编号");
model.addColumn("商品名称");
model.addColumn("商品价格");
while (rs.next()) {
String id = rs.getString("id");
String name = rs.getString("name");
double price = rs.getDouble("price");
model.addRow(new Object[]{id, name, price});
}
table = new JTable(model);
JScrollPane scrollPane = new JScrollPane(table);
panel.add(scrollPane, BorderLayout.CENTER);
rs.close();
stmt.close();
conn.close();
} catch (Exception e) {
e.printStackTrace();
}
add(panel);
setVisible(true);
}
public static void main(String[] args) {
new QueryGoodsFrame();
}
}
```
以上是一个简单的基于Java和MySQL的超市商品管理系统的示例。你可以根据实际需求进行功能的扩展和优化。
阅读全文