Java+Swing+Mysql实现超市管理体系
一、体系先容1.开发环境
操作体系:Win10
开发工具 :IDEA2018
JDK版本:jdk1.8
数据库:Mysql8.0
2.技能选型
Java+Swing+Mysql
3.功能模块
https://img-blog.csdnimg.cn/img_convert/f2259dd84274e47a36f201a5ed7b66bd.jpeg 4.体系功能
1.体系登录登出
管理员可以登录、退出体系
2.商品信息管理
管理员可以对商品信息进行查询、添加、修改、删除等操作。
3.出库信息管理
管理员可以对出库信息进行查询、添加、修改、删除等操作。
4.入库信息管理
管理员可以对入库信息进行查询、添加、修改、删除等操作。
5.客户信息管理
管理员可以对客户信息进行查询、添加、修改、删除等操作。
6.供应商信息管理
管理员可以对供应商信息进行查询、添加、修改、删除等操作。
5.工程结构
https://img-blog.csdnimg.cn/img_convert/cd829a2f8e7854a79f73d83df5359bd7.jpeg 二、体系展示
1.登录页面
https://img-blog.csdnimg.cn/img_convert/d63a374f20dfc8c9f25b00ceb55a21a0.jpeg
2.主页面
https://img-blog.csdnimg.cn/img_convert/d12d95288a2fce386370246d7102c0d3.jpeg
3.商品展示
https://img-blog.csdnimg.cn/img_convert/6391bd10bafb95fa731b46ad8c1706ac.jpeg
4.商品新增
https://img-blog.csdnimg.cn/img_convert/ff4c444ad3a838a3f22d0b69548846af.jpeg
5.出库展示
https://img-blog.csdnimg.cn/img_convert/d78faaf805fce0a50642dd7e19c69d38.jpeg
6.出库新增
https://img-blog.csdnimg.cn/img_convert/d503f03ba70516c27c367dc0b28229b6.jpeg
7.入库展示
https://img-blog.csdnimg.cn/img_convert/8a2cf460626cfe1f89329802196a0cc6.jpeg
8.入库新增
https://img-blog.csdnimg.cn/img_convert/3925acdefde267f4926bf93eaf6f8d47.jpeg
9.客户展示
https://img-blog.csdnimg.cn/img_convert/31e95e439002096ca1c94a00bb991c86.jpeg
10.客户新增
https://img-blog.csdnimg.cn/img_convert/c72dd843cc3e0cf7918de36e79f3acbd.jpeg
11.供应商展示
https://img-blog.csdnimg.cn/img_convert/81d191cbed87180644664122beba17cf.jpeg
12.供应商新增
https://img-blog.csdnimg.cn/img_convert/f8b05a844b4ed50c711d0c17b5d2c633.jpeg
13.关于我们
https://img-blog.csdnimg.cn/img_convert/74d9d32cacec1427b23bea74c8abece6.jpeg
三、部门代码
AdminDao
package com.sjsq.dao;
import java.util.ArrayList;
import java.util.List;
import com.sjsq.model.Admin;
import com.sjsq.utils.DBUtil;
/**
* 管理员登录
*/
public class AdminDao {
/**
* 登录
*
* @param username
* @param password
* @return
* @throws Exception
*/
public boolean login(String username, String password) throws Exception {
List<Object> paramList = new ArrayList<>();
paramList.add(username);
paramList.add(password);
Admin admin = DBUtil.getObject("select * from t_admin where username=? and password=?", paramList, Admin.class);
if (admin != null) {
return true;
}
return false;
}
}CustomerDao
package com.sjsq.dao;
import java.util.ArrayList;
import java.util.List;
import com.sjsq.model.Customer;
import com.sjsq.utils.DBUtil;
import com.sjsq.utils.StringUtil;
/**
* 客户信息操作
*/
public class CustomerDao {
/**
* 查询所有客户
*
* @return
* @throws Exception
*/
public List<Customer> getAll() throws Exception {
return DBUtil.getQueryList("select * from t_customer order by id asc", Customer.class);
}
/**
* 条件查询
*
* @param name
* @return
* @throws Exception
*/
public List<Customer> search(String name) throws Exception {
List<Object> paramList = new ArrayList<>();
StringBuffer sb = new StringBuffer("select * from t_customer where 1=1");
if (!StringUtil.isEmpty(name)) {
sb.append(" and name like ?");
paramList.add("%" + name + "%");
}
sb.append(" order by id asc");
return DBUtil.getQueryList(sb.toString(), paramList, Customer.class);
}
/**
* 保存客户信息
*
* @param customer
* @return
* @throws Exception
*/
public int save(Customer customer) throws Exception {
List<Object> paramList = new ArrayList<>();
paramList.add(customer.getName());
paramList.add(customer.getPhone());
paramList.add(customer.getAddress());
return DBUtil.execute("insert into t_customer(name,phone,address) values(?,?,?)", paramList);
}
/**
* 更新客户信息
*
* @param customer
* @return
* @throws Exception
*/
public int update(Customer customer) throws Exception {
List<Object> paramList = new ArrayList<>();
paramList.add(customer.getName());
paramList.add(customer.getPhone());
paramList.add(customer.getAddress());
paramList.add(customer.getId());
return DBUtil.execute("update t_customer set name=?,phone=?,address=? where id=?", paramList);
}
/**
* 根据id查询客户信息
*
* @param id
* @return
* @throws Exception
*/
public Customer getById(int id) throws Exception {
List<Object> paramList = new ArrayList<>();
paramList.add(id);
return DBUtil.getObject("select * from t_customer where id=?", paramList, Customer.class);
}
/**
* 删除
*
* @param id
* @return
* @throws Exception
*/
public int delete(int id) throws Exception {
List<Object> paramList = new ArrayList<>();
paramList.add(id);
return DBUtil.execute("delete from t_customer where id=?", paramList);
}
}StringUtil
package com.sjsq.utils;
import java.util.regex.Matcher;
import java.util.regex.Pattern;
/**
* 字符串转化类
*/
public class StringUtil {
//数据库字段驼峰命名转换
private static Pattern linePattern = Pattern.compile("_(\\w)");
private static Pattern humpPattern = Pattern.compile("");
// 判断字符串为空
public static boolean isEmpty(String str) {
if ("".equals(str) || str == null) {
return true;
} else {
return false;
}
}
// 判断字符串不为空
public static boolean isNotEmpty(String str) {
if (!"".equals(str) && str != null) {
return true;
} else {
return false;
}
}
/**
* 下划线转驼峰
*/
public static String lineToHump(String str) {
str = str.toLowerCase();
Matcher matcher = linePattern.matcher(str);
StringBuffer sb = new StringBuffer();
while (matcher.find()) {
matcher.appendReplacement(sb, matcher.group(1).toUpperCase());
}
matcher.appendTail(sb);
return sb.toString();
}
/**
* 驼峰转下划线(单写法,效率低于{@link #humpToLine2(String)})
*/
public static String humpToLine(String str) {
return str.replaceAll("", "_$0").toLowerCase();
}
/**
* 驼峰转下划线,效率比上面高
*/
public static String humpToLine2(String str) {
Matcher matcher = humpPattern.matcher(str);
StringBuffer sb = new StringBuffer();
while (matcher.find()) {
matcher.appendReplacement(sb, "_" + matcher.group(0).toLowerCase());
}
matcher.appendTail(sb);
return sb.toString();
}
}LoginFrame
package com.sjsq.view;
import com.sjsq.dao.AdminDao;
import com.sjsq.utils.StringUtil;
import javax.swing.*;
import javax.swing.border.EmptyBorder;
import java.awt.*;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
/**
* 登录系统
*/
public class LoginFrame extends JFrame {
private JPanel contentPane;
private JTextField unameText;
private JPasswordField pwdText;
private AdminDao userDao = new AdminDao();
/**
* 主函数
*/
public static void main(String[] args) {
EventQueue.invokeLater(new Runnable() {
public void run() {
try {
LoginFrame frame = new LoginFrame();
frame.setVisible(true);
} catch (Exception e) {
e.printStackTrace();
}
}
});
}
/**
* 创建窗体
*/
public LoginFrame() {
setTitle("超市商品信息管理系统");
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
setBounds(100, 100, 450, 300);
setLocationRelativeTo(null);
contentPane = new JPanel();
contentPane.setBorder(new EmptyBorder(5, 5, 5, 5));
setContentPane(contentPane);
contentPane.setLayout(null);
JLabel lblNewLabel = new JLabel("系统登录");
lblNewLabel.setFont(new Font("宋体", Font.PLAIN, 25));
lblNewLabel.setBounds(177, 32, 108, 25);
contentPane.add(lblNewLabel);
JLabel lblNewLabel_1 = new JLabel("账号:");
lblNewLabel_1.setBounds(98, 89, 54, 15);
contentPane.add(lblNewLabel_1);
JLabel lblNewLabel_2 = new JLabel("密码:");
lblNewLabel_2.setBounds(98, 152, 54, 15);
contentPane.add(lblNewLabel_2);
unameText = new JTextField();
unameText.setBounds(148, 86, 166, 21);
contentPane.add(unameText);
unameText.setColumns(10);
pwdText = new JPasswordField();
pwdText.setBounds(148, 149, 166, 21);
contentPane.add(pwdText);
JButton btnNewButton = new JButton("登录");
btnNewButton.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent e) {
String username = unameText.getText();
String password = pwdText.getText();
if (StringUtil.isEmpty(username)) {
JOptionPane.showMessageDialog(contentPane, "请输入账号", "系统提示", JOptionPane.WARNING_MESSAGE);
return;
}
if (StringUtil.isEmpty(password)) {
JOptionPane.showMessageDialog(contentPane, "请输入密码", "系统提示", JOptionPane.WARNING_MESSAGE);
return;
}
try {
// 登录账号验证
boolean flag = userDao.login(username, password);
if (flag) {
//跳转主界面
JOptionPane.showMessageDialog(contentPane, "登录成功!");
MainFrame main = new MainFrame();
main.setVisible(true);
// 释放所有本机屏幕资源
dispose();
} else {
JOptionPane.showMessageDialog(contentPane, "用户名密码错误!", "系统提示", JOptionPane.WARNING_MESSAGE);
return;
}
} catch (Exception e1) {
e1.printStackTrace();
JOptionPane.showMessageDialog(contentPane, "登录异常:" + e1.getMessage(), "系统提示", JOptionPane.WARNING_MESSAGE);
return;
}
}
});
btnNewButton.setBounds(146, 202, 76, 23);
contentPane.add(btnNewButton);
JButton btnNewButton_1 = new JButton("退出");
btnNewButton_1.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent e) {
dispose();
}
});
btnNewButton_1.setBounds(237, 202, 76, 23);
contentPane.add(btnNewButton_1);
}
}CustomerAddFrame
package com.sjsq.view;
import com.sjsq.dao.CustomerDao;
import com.sjsq.model.Customer;
import com.sjsq.utils.StringUtil;
import javax.swing.*;
import javax.swing.border.EmptyBorder;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
/**
* 新增客户信息类
*/
public class CustomerAddFrame extends JFrame {
// 定义内容面板
private JPanel contentPane;
// 定义姓名文本
private JTextField nameText;
private JTextField phoneText;
private JTextField addressText;
private CustomerDao customerDao = new CustomerDao();
/**
* Create the frame.
*/
public CustomerAddFrame() {
setTitle("新增客户信息");
setDefaultCloseOperation(JFrame.DISPOSE_ON_CLOSE);
setBounds(100, 100, 353, 351);
setLocationRelativeTo(null);
contentPane = new JPanel();
contentPane.setBorder(new EmptyBorder(5, 5, 5, 5));
setContentPane(contentPane);
contentPane.setLayout(null);
JLabel lblNewLabel = new JLabel("客户名称:");
lblNewLabel.setBounds(29, 34, 92, 15);
contentPane.add(lblNewLabel);
// 创建空白文本
nameText = new JTextField();
// 设置位置大小
nameText.setBounds(113, 31, 182, 21);
// 添加到面板
contentPane.add(nameText);
// 设置内容宽度
nameText.setColumns(15);
JLabel lblNewLabel_1 = new JLabel("联系电话:");
lblNewLabel_1.setBounds(29, 84, 92, 15);
contentPane.add(lblNewLabel_1);
phoneText = new JTextField();
phoneText.setBounds(113, 81, 182, 21);
contentPane.add(phoneText);
phoneText.setColumns(10);
JLabel lblNewLabel_5 = new JLabel("客户地址:");
lblNewLabel_5.setBounds(29, 148, 91, 15);
contentPane.add(lblNewLabel_5);
addressText = new JTextField();
addressText.setBounds(113, 145, 182, 21);
contentPane.add(addressText);
addressText.setColumns(10);
JButton btnNewButton = new JButton("保存");
btnNewButton.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent e) {
// 获取输入的信息
String name = nameText.getText();
String phone = phoneText.getText();
String address = addressText.getText();
// 判断输入为空,弹出相应提示
if (StringUtil.isEmpty(name)) {
JOptionPane.showMessageDialog(contentPane, "请输入客户名称", "系统提示", JOptionPane.WARNING_MESSAGE);
return;
}
if (StringUtil.isEmpty(phone)) {
JOptionPane.showMessageDialog(contentPane, "请输入联系电话", "系统提示", JOptionPane.WARNING_MESSAGE);
return;
}
if (StringUtil.isEmpty(address)) {
JOptionPane.showMessageDialog(contentPane, "请输入客户地址", "系统提示", JOptionPane.WARNING_MESSAGE);
return;
}
// 创建对象
Customer customer = new Customer();
// 保存信息到对象中
customer.setName(name);
customer.setPhone(phone);
customer.setAddress(address);
try {
// 新增信息
customerDao.save(customer);
} catch (Exception e1) {
// TODO Auto-generated catch block
e1.printStackTrace();
JOptionPane.showMessageDialog(contentPane, "保存异常:" + e1.getMessage(), "系统提示", JOptionPane.WARNING_MESSAGE);
return;
}
JOptionPane.showMessageDialog(contentPane, "保存成功!");
dispose();
}
});
btnNewButton.setBounds(113, 215, 74, 23);
contentPane.add(btnNewButton);
JButton btnNewButton_1 = new JButton("取消");
btnNewButton_1.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent e) {
dispose();
}
});
btnNewButton_1.setBounds(220, 215, 74, 23);
contentPane.add(btnNewButton_1);
}
}四、其他
1.更多体系
Java+Swing体系系列实现
Java+Swing实现斗地主游戏
Java+Swing实现图书管理体系
Java+Swing实现医院管理体系
Java+Swing实现考试管理体系
Java+Swing实现酒店管理体系
Java+Swing实现超市管理体系
Java+Swing实现电影购票体系
Java+Swing实现堆栈管理体系-1
Java+Swing实现堆栈管理体系-2
Java+Swing实现进销存管理体系
Java+Swing实现自助取款机体系
Java+Swing实现通讯录管理体系
Java+Swing实现停车场管理体系
Java+Swing实现门生信息管理体系-1
Java+Swing实现门生信息管理体系-2
Java+Swing实现门生宿舍管理体系
Java+Swing实现门生选课管理体系
Java+Swing实现学天生绩管理体系
Java+Swing实现学校课本管理体系
Java+Swing实现学校教务管理体系
Java+Swing实现企业人事管理体系
Java+Swing实现电子相册管理体系
Java+Swing实现超市管理体系-TXT存储数据
Java+Swing实现自助取款机体系-TXT存储数据
Java+Swing实现宠物市肆管理体系-TXT存储数据
Java+JSP体系系列实现
Java+JSP实现门生图书管理体系
Java+JSP实现门生信息管理体系
Java+JSP实现用户信息管理体系
Java+JSP实现教师信息管理体系
Java+JSP实现门生宿舍管理体系
Java+JSP实现商品信息管理体系
Java+JSP实现宠物信息管理体系
Java+JSP实现学天生绩管理体系
Java+Servlet体系系列实现
Java+Servlet+JSP实现航空订票体系
Java+Servlet+JSP实现消息发布体系
Java+Servlet+JSP门生宿舍管理体系
Java+Servlet+JSP实现图书管理体系
Java+Servlet+JSP实现停车场管理体系
Java+Servlet+JSP实现房屋租赁管理体系
Java+Servlet+JSP实现门生信息管理体系
Java+Servlet+JSP实现门生选课管理体系
Java+Servlet+JSPl实现门生选课签到体系
Java+Servlet+JSP实现宠物诊所管理体系
Java+Servlet+JSP实现学天生绩管理体系-1
Java+Servlet+JSP实现学天生绩管理体系-2
Java+SSM体系系列实现
Java+SSM+JSP实现网上考试体系
Java+SSM+JSP实现宠物商城体系
Java+SSM+JSP实现超市管理体系
Java+SSM+JSP实现学天生绩管理体系
Java+SSM+JSP实现门生信息管理体系
Java+SSM+JSP实现药品信息管理体系
Java+SSM+JSP实现汽车信息管理体系
Java+SSM+Jspl实现商品信息管理体系
Java+SSM+JSP+Maven实现网上书城体系
Java+SSM+JSP+Maven实现学校教务管理体系
Java+SSH体系系列实现
Java+SSH+JSP实如今线考试体系
Java+SSH+JSP实现医院在线挂号体系
Java+Springboot体系系列实现
Java+Springboot+H-ui+Maven实现营销管理体系
Java+Springboot+Bootstrap+Maven实现网上商城体系
Java+Springboot+Bootstrap+Maven实现景区旅游管理体系
1.更多JavaWeb体系请关注专栏。
https://blog.csdn.net/helongqiang/category_10020130.html
2.更多JavaSwing体系请关注专栏。
https://blog.csdn.net/helongqiang/category_6229101.html
2.源码下载
sql在sql文件夹下面
体系账号信息如下,此处是管理员权限
账号:admin 暗码:admin
下载地址:Java+Swing+Mysql实现超市管理体系
3.运行项目
关注B站:水坚石青
后期有更多干货视频推出!!!
Eclipse如何导入JavaSwing项目超详细教程
4.备注
如有侵权请联系我删除。
5.支持博主
如果您以为此文对您有帮助,请点赞加关注加收藏。祝您生活愉快!
免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!更多信息从访问主页:qidao123.com:ToB企服之家,中国第一个企服评测及商务社交产业平台。
页:
[1]