0


基于Java+Mysql的超市管理系统(附源码)

文章目录

一、项目介绍

项目下载:
gitee下载:https://gitee.com/wusupweilgy/taobao.git
蓝奏云下载:https://wwp.lanzoup.com/iSX9V0nju2te
课设报告:https://wwp.lanzoup.com/iZLV20te02cd 提取码:6666
(包括所有代码源文件、第三方库和界面图片)

基于Java swing+Mysql实现的超市管理与购物系统,使用了beautyEye_inf.jar美化界面,使用idea编写逻辑代码

1.开发环境

jdk8+mysql8+idea

2.功能

1.注册、登录功能。
2.管理员有商品类别管理、商品管理、用户管理、出售记录查询等功能。
3.普通用户有查看购物车、购物卡充值、修改密码、购买商品等功能。

3.项目运行截图

该项目前端界面和后端数据校验博主经过了一系列测试,基本是个比较完善的java课设了,如有不足,希望大家多多建议。
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

二、使用步骤

1.用idea导入项目

将项目文件直接复制到Java工程里(也可以通过git导入,大家可以搜索相关教程,这里就不演示了),鼠标右击lib文件夹,点击Add as Library…将项目需要的第三方库添加到项目中,其中lib文件夹里的beautyeye_Inf.jar是用来美化界面的
在这里插入图片描述

2.配置项目jdk版本

ctrl+alt+shift+s 设置项目的jdk版本,两个我这里都选8
​​​​在这里插入图片描述

然后点击

在这里插入图片描述

3.配置项目字符编码

因为项目是这样设置编码,这里一定要这样设置,否则可能乱码
在这里插入图片描述

4.配置数据库

1)创建shoping数据库,导入运行shoping.sql文件
2)更改db.properties文件,基本只用更改密码,填写自己的数据库密码
在这里插入图片描述

5.运行项目

运行main文件下的Main,输入用户名、密码(都为admin)进入管理员界面,进入普通用户界面需要注册,然后登录

三、项目优点

1.单例模式

项目的每个子窗口都设置了单例模式,为了防止多次点击,创建过多窗口。这里用到了饿汉模式

//单例模式--饿汉模式,只要类被加载,实例就会立刻创建,这样子窗口加载会快一些//把构造方法变成私有,privatestaticGoodsTypeAdd goodsTypeAdd =newGoodsTypeAdd();//获取实例的唯一方式publicstaticGoodsTypeAddgetGoodsTypeAdd(){return goodsTypeAdd;}

2.封装了数据库连接类

packageutiles;importjava.sql.*;importjava.util.ResourceBundle;/**
 * 
 */publicclassJDBCUtils{privatestaticString driver;privatestaticString url;privatestaticString username;privatestaticString password;privatestaticResourceBundle bundle;//读取db.properties数据库配置文件static{
        bundle =ResourceBundle.getBundle("db");
        driver = bundle.getString("jdbc.driverClass");
        url = bundle.getString("jdbc.jdbcUrl");
        username = bundle.getString("jdbc.username");
        password = bundle.getString("jdbc.password");}/**
     * 
     *
     * @return
     */publicstaticConnectiongetConnection(){Connection conn =null;try{Class.forName(driver);
            conn =DriverManager.getConnection(url, username, password);}catch(Exception e){
            e.printStackTrace();}return conn;}publicstaticvoidrelease(Connection conn){if(conn !=null){try{
                conn.close();}catch(SQLException e){
                e.printStackTrace();}}}publicstaticvoidrelease(Connection conn,PreparedStatement pstmt){if(pstmt !=null){try{
                pstmt.close();}catch(SQLException e){
                e.printStackTrace();}}if(conn !=null){try{
                conn.close();}catch(SQLException e){
                e.printStackTrace();}}}publicstaticvoidrelease(Connection conn,PreparedStatement pstmt,ResultSet rs){if(rs !=null){try{
                rs.close();}catch(SQLException e){
                e.printStackTrace();}}if(pstmt !=null){try{
                pstmt.close();}catch(SQLException e){
                e.printStackTrace();}}if(conn !=null){try{
                conn.close();}catch(SQLException e){
                e.printStackTrace();}}}}

3.用户信息读取保存

从数据库读取数据写入本地的文件,一定程度上减少了数据库连接次数

packageutiles;importjava.io.*;importjava.util.ArrayList;publicclassLoginConfig{/**
     * 将用户的个人信息写入文件
     * @param name
     * @param id
     * @param password
     */publicstaticvoidwriteUser(String name,String id,String password,String money){BufferedWriter bos =null;try{
                bos =newBufferedWriter(newFileWriter("password.txt"));
                bos.write(name);
                bos.newLine();
                bos.write(password);
                bos.newLine();
                bos.write(id);
                bos.newLine();
                bos.write(money);}catch(FileNotFoundException e){// TODO Auto-generated catch block
                e.printStackTrace();}catch(IOException e){// TODO Auto-generated catch block
                e.printStackTrace();}finally{try{if(bos!=null){
                        bos.close();}}catch(IOException e){// TODO Auto-generated catch block
                    e.printStackTrace();}}}/**
     * 返回文件中用户的个人信息集合
     * @return
     */publicstaticArrayList<String>getUserList(){ArrayList<String> list =newArrayList();BufferedReader bis;try{
            bis =newBufferedReader(newFileReader("password.txt"));String s =null;while((s=bis.readLine())!=null){
                list.add(s);}}catch(FileNotFoundException e){// TODO Auto-generated catch block
            e.printStackTrace();}catch(IOException e){// TODO Auto-generated catch block
            e.printStackTrace();}return list;}publicstaticvoidreset(){BufferedWriter bos =null;try{
                bos =newBufferedWriter(newFileWriter("password.txt"));}catch(FileNotFoundException e){// TODO Auto-generated catch block
                e.printStackTrace();}catch(IOException e){// TODO Auto-generated catch block
                e.printStackTrace();}finally{try{if(bos!=null){
                        bos.close();}}catch(IOException e){// TODO Auto-generated catch block
                    e.printStackTrace();}}}}

四、个人总结

以上就是我的java课设分享,如果这篇文章有帮助到你,希望可以给作者点个赞👍,创作不易,如果有对后端技术、前端领域感兴趣的读者,可以关注下,互相交流学习 😉😉😉

标签: java mysql idea

本文转载自: https://blog.csdn.net/weixin_51603038/article/details/127098277
版权归原作者 无所谓^_^ 所有, 如有侵权,请联系我们删除。

“基于Java+Mysql的超市管理系统(附源码)”的评论:

还没有评论