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() {
            
            @Override
            public 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() {
            
            @Override
            public 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() {
            
            @Override
            public 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() {
            
            @Override
            public 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() {
            
            @Override
            public 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超市销售管理系统是一款基于Java语言开发的软件,旨在为中小型超市提供全面的销售管理解决方案。该系统包含多个功能模块,包括用户登录注册、商品信息管理、员工信息管理、用户购物、退货、积分管理等。通过该系统超市管理员可以轻松管理超市的日常销售工作,提高工作效率和管理水平。 该系统的主要特点包括: - 界面友好,操作简单:系统采用直观的界面设计,操作简单易懂,即使没有专业的计算机知识也能轻松上手。 - 功能全面,覆盖面广:系统包含多个功能模块,覆盖了超市销售管理的各个方面,能够满足不同超市的不同需求。 - 数据安全,保密性好:系统采用多层次的数据安全措施,确保超市的数据安全和保密性。 - 统计分析,数据报表:系统能够对超市销售数据进行统计分析,并生成各种数据报表,帮助超市管理员更好地了解超市销售情况。 以下是该系统的一些功能模块的介绍: - 用户登录注册:用户可以通过该模块进行登录和注册,注册后可以享受VIP用户的特权。 - 商品信息管理:该模块包括商品的添加、修改、删除、查询等功能,管理员可以通过该模块对超市商品信息进行管理。 - 员工信息管理:该模块包括员工的添加、修改、删除、查询等功能,管理员可以通过该模块对超市的员工信息进行管理。 - 用户购物:该模块包括用户的购物车管理、订单管理等功能,用户可以通过该模块进行购物。 - 退货:该模块包括用户的退货管理,用户可以通过该模块进行退货操作。 - 积分管理:该模块包括用户的积分管理,用户可以通过该模块查看自己的积分情况,并进行积分兑换等操作。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

计算机程序

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值