Java 超市管理系统、商品进销存系统 -窗体程序
今天为大家分享一个java语言编写的超市管理系统,目前系统功能已经很全面,后续会进一步完善。整个系统界面漂亮,有完整得源码,希望大家可以喜欢。喜欢的帮忙点赞和关注。一起编程、一起进步
开发环境
开发语言为Java,开发环境Eclipse或者IDEA都可以。数据库采用:MySQL。运行主程序,或者执行打开JAR文件即可以运行本程序。运行程序可以在编辑器中运行 run as applicaiton,或者jar ***.jar运行
系统框架
利用JDK自带的SWING框架开发,不需要安装第三方JAR包。MySQL数据库,纯窗体模式,直接运行Main文件即可以。同时带有详细得设计文档
主要功能
小型商店进销存管理系统主要的功能有以下几点
1 系统登陆:通过输入密码,登陆到系统中来
2 修改密码:对用户的密码进行修改,修改后密码保存到数据库
3 库存查询:查询商品在库存在的信息
4 商品进货:进货信息包含类型、商品名称、数量等信息
5 进货查询:查询历史上的进货信息。进货信息包括:商品类型、商品名称、数量、进货日期
6 商品销售:销售商品中的信息。销售信息包括:商品类型,商品名称,商品数量,单价,总价、销售日期等信息
7 库存缺货补货提醒:当用户登陆进系统后,商品库存小于指定的库存信息的时候,会弹出提醒。
实现效果
1 界面登陆
2 主界面
3 缺货提醒
4 超市进货
5 进货记录查询
6 新货上架
7 物品销售
8 修改密码
核心代码
import java.awt.BorderLayout;
import java.awt.Component;
import java.awt.Container;
import java.awt.Dimension;
import java.awt.Font;
import java.awt.Image;
import java.awt.Insets;
import java.awt.Toolkit;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;import javax.swing.ImageIcon;
import javax.swing.JButton;
import javax.swing.JFrame;
import javax.swing.JPanel;
import javax.swing.SwingConstants;public class MainFrame extends JFrame{private static final long serialVersionUID = -8808883923263763897L;private ClientContext clientContext;public MainFrame(){this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);init();}public void init(){this.setTitle("小型商店进销存管理系统");this.setSize(550, 400);this.setContentPane(createContentPane());int windowWidth = this.getWidth(); //获得窗口宽int windowHeight = this.getHeight(); //获得窗口高Toolkit kit = Toolkit.getDefaultToolkit(); //定义工具包Dimension screenSize = kit.getScreenSize(); //获取屏幕的尺寸int screenWidth = screenSize.width; //获取屏幕的宽int screenHeight = screenSize.height; //获取屏幕的高this.setLocation(screenWidth / 2 - windowWidth / 2, screenHeight / 2 - windowHeight / 2);//设置窗口居中显示this.setResizable(false);}private Container createContentPane() {JPanel panel = new JPanel(new BorderLayout());panel.add(createFunctionPanel(), BorderLayout.CENTER);return panel;}private Component createFunctionPanel() {Image image=new ImageIcon(MainFrame.class.getResource("icon/bg.png")).getImage(); JPanel panel = new BackgroundPanel(image);Font font16=new Font("微软雅黑", 1, 16);JButton sale=new JButton("销 售",new ImageIcon(MainFrame.class.getResource("icon/sell.png")));sale.setHorizontalTextPosition(SwingConstants.CENTER);sale.setVerticalTextPosition(SwingConstants.BOTTOM);sale.setBorderPainted(false);sale.setFocusPainted(false);sale.setContentAreaFilled(false);sale.setFocusable(true);sale.setMargin(new Insets(180, 10, 0, 30));sale.setFont(font16);sale.addActionListener(new ActionListener() {@Overridepublic void actionPerformed(ActionEvent e) {clientContext.showSellFrame();}});panel.add(sale);JButton purchases=new JButton("进 货",new ImageIcon(MainFrame.class.getResource("icon/inventory.png")));purchases.setHorizontalTextPosition(SwingConstants.CENTER);purchases.setVerticalTextPosition(SwingConstants.BOTTOM);purchases.setBorderPainted(false);purchases.setFocusPainted(false);purchases.setContentAreaFilled(false);purchases.setFocusable(true);purchases.setMargin(new Insets(180, 10, 0, 30));purchases.setFont(font16);purchases.addActionListener(new ActionListener() {@Overridepublic void actionPerformed(ActionEvent e) {clientContext.showOrHidePurchaseFrame(true);}});panel.add(purchases);JButton stock=new JButton("库 存",new ImageIcon(MainFrame.class.getResource("icon/storage.png")));stock.setHorizontalTextPosition(SwingConstants.CENTER);stock.setVerticalTextPosition(SwingConstants.BOTTOM);stock.setBorderPainted(false);stock.setFocusPainted(false);stock.setContentAreaFilled(false);stock.setFocusable(true);stock.setMargin(new Insets(180, 10, 0, 30));stock.setFont(font16);stock.addActionListener(new ActionListener() {@Overridepublic void actionPerformed(ActionEvent e) {clientContext.showOrHideStorageFrame(true);}});panel.add(stock);JButton sellHistoryBtn=new JButton("销售记录",new ImageIcon(MainFrame.class.getResource("icon/summary.png")));sellHistoryBtn.setHorizontalTextPosition(SwingConstants.CENTER);sellHistoryBtn.setVerticalTextPosition(SwingConstants.BOTTOM);sellHistoryBtn.setBorderPainted(false);sellHistoryBtn.setFocusPainted(false);sellHistoryBtn.setContentAreaFilled(false);sellHistoryBtn.setFocusable(true);sellHistoryBtn.setMargin(new Insets(180, 10, 0, 10));sellHistoryBtn.setFont(font16);sellHistoryBtn.addActionListener(new ActionListener() {@Overridepublic void actionPerformed(ActionEvent e) {clientContext.showSellHistoryFrame();}});panel.add(sellHistoryBtn);JButton setting=new JButton("修改密码",new ImageIcon(MainFrame.class.getResource("icon/setting.png")));setting.setHorizontalTextPosition(SwingConstants.CENTER);setting.setVerticalTextPosition(SwingConstants.BOTTOM);setting.setBorderPainted(false);setting.setFocusPainted(false);setting.setContentAreaFilled(false);setting.setFocusable(true);setting.setMargin(new Insets(180, 10, 0, 10));setting.setFont(font16);setting.addActionListener(new ActionListener() {@Overridepublic void actionPerformed(ActionEvent e) {clientContext.showModifyPwdFrame(true);}});panel.add(setting);return panel;}public static void main(String[] args) {MainFrame mf = new MainFrame();mf.init();mf.setVisible(true);}public ClientContext getClientContext() {return clientContext;}public void setClientContext(ClientContext clientContext) {this.clientContext = clientContext;}}
项目总结
开发一套系统,最重要的是细心,并不是一定要做到面面俱到,在准备工作中要正确分析社会需求了解现实应用,画出流程图,把大体框架做好,然后再逐一细化。我们不可能做到面面俱到,但一定要做到步步扎实,作为一个程序编程人员,要保持清醒的头脑,以现实为依据,让自己的每一行代码都能实现自己的意义。 通过这次课程设计,我收获的不仅仅是课程上的知识得到实际应用,还有编程的基本习惯和开发系统时应注意的流程。
Java 超市管理系统、商品进销存系统 -窗体程序相关推荐
- javaweb JAVA JSP超市订单后台管理系统源码超市管理系统商品进销存系统超市后台管理
JSP超市订单后台管理系统源码超市管理系统商品进销存系统超市后台管理 大家好,很高兴和大家分享Java项目和经验.不管同学们是出于什么需求.都希望各位计算机专业的同学有一个提高. 本系统采用eclip ...
- javaweb JAVA JSP超市管理系统源码超市订单管理系统商品进销存系统超市后台管理
大家好,很高兴和大家分享Java项目和经验.不管同学们是出于什么需求.都希望各位计算机专业的同学有一个提高. 本系统采用eclipse/myeclipse开发工具,mysql数据库.
- 基于javaweb的商品进销存系统(java+vue+springboot+mybatis+mysql)
基于javaweb的商品进销存系统(java+vue+springboot+mybatis+mysql) 运行环境 Java≥8.MySQL≥5.7.Node.js≥10 开发工具 后端:eclips ...
- java计算机毕业设计服装批发进销存系统源码+mysql数据库+系统+lw文档+部署
java计算机毕业设计服装批发进销存系统源码+mysql数据库+系统+lw文档+部署 java计算机毕业设计服装批发进销存系统源码+mysql数据库+系统+lw文档+部署 本源码技术栈: 项目架构:B ...
- java的汽车商城进销存系统
java的汽车商城进销存系统 emmmm 本系统带程序说明书 有需要的可以去我上传的资源里面找,找不到的话,评论我,或者站内私信留下邮箱, 我看到机会给你发,也可以主动联系我博客名. 因为最近太忙 ...
- 计算机毕设Python+Vue医院药品进销存系统(程序+LW+部署)
项目运行 环境配置: Jdk1.8 + Tomcat7.0 + Mysql + HBuilderX(Webstorm也行)+ Eclispe(IntelliJ IDEA,Eclispe,MyEclis ...
- Python-Django毕业设计医院药品进销存系统(程序+Lw)
该项目含有源码.文档.程序.数据库.配套开发软件.软件安装教程 项目运行 环境配置: Pychram社区版+ python3.7.7 + Mysql5.7 + HBuilderX+list pip+N ...
- Java swing项目【超市管理系统】(进销存项目)
不知道大家最开始学习Java的时候有没有做过这个项目,这次给大家分享一个之前做过的java swing项目. 工具: eclipse MySQL数据库 使用技术: JDBC java swing M ...
- mysql的收银软件_java swing mysql实现的超市收银进销存系统项目源码附带视频指导运行教程...
<p> <span style="color:#555555;font-family:"font-size:16px;background-color:#FFFF ...
最新文章
- szu 寒训复习day #4数论入门详解[修改]用Mardown再改了一下
- Android Java虚拟机拦截技术分析
- 玩皮,DIY了一个本子
- UA OPTI501 电磁波3 SI单位制与电磁学常用单位
- 整理:深度学习 vs 机器学习 vs 模式识别
- InnoSetup 安装前卸载旧版程序
- I2C和SPI异同及使用注意
- Codeforces 482E ELCA (LCT)
- 【Python】可视化配色方案自由啦 (Python版)
- marquee滚动起始位置_巧用喵影关键帧制作滚动水印,让视频小偷无可盗
- 从Speedment 3.0.17或更高版本的事务轻松返回值
- 获取时间,并将时间的空格和特殊字符去掉,作为一个变量来使用
- 使用Python预处理机器学习需要的手写体数字图像文件数据集
- 机器学习之路: python 支持向量机 LinearSVC 手写字体识别
- sklearn10-使用总结
- 传智播客 sklearn数据集与机器学习组成
- [Linux_Ubuntu13] 声音很小前台无法调节的处理方法
- Web应用程序安全原理(Web服务面临的威胁)
- U盘写保护修复(亲测可用)
- 计算机信息学院运动会入场式,厦门大学信息学院第一届新生运动会成功举办