文章目录
一、项目介绍
项目下载:
gitee下载:https://gitee.com/wusupweilgy/taobao.git
蓝奏云下载:https://wwp.lanzoup.com/i0ZZB0ywnipi
课设报告:https://wwp.lanzoup.com/iZLV20te02cd 提取码:6666
(包括所有代码源文件、第三方库和界面图片)
基于Java swing+Mysql实现的超市管理与购物系统,使用了beautyEye_inf.jar美化界面,使用idea编写逻辑代码
1.开发环境
jdk8+mysql8+idea
2.功能
注册、登录功能。
2.管理员有商品类别管理、商品管理、用户管理、出售记录查询等功能。
3.普通用户有查看购物车、购物卡充值、修改密码、购买商品等功能。
3.项目运行截图
该项目前端界面和后端数据校验博主经过了一系列测试,基本是个比较完善的java课设了,如有不足,希望大家多多建议。
二、使用步骤
1.用idea导入项目
通过idea的open打开项目
2.配置项目jdk版本
ctrl+alt+shift+s 设置项目的jdk版本,两个我这里都选8,必须选择8,如果java版本不对,建议重新下8,因为8比较稳定。
3.配置数据库
1)创建shoping数据库,导入运行shoping.sql文件
2)更改db.properties文件,基本只用更改密码,填写自己的数据库密码
4.运行项目
运行main文件下的Main,输入用户名、密码(都为admin)进入管理员界面,进入普通用户界面需要注册,然后登录
三、项目优点
1.单例模式
项目的每个子窗口都设置了单例模式,为了防止多次点击,创建过多窗口。这里用到了饿汉模式
//单例模式--饿汉模式,只要类被加载,实例就会立刻创建,这样子窗口加载会快一些//把构造方法变成私有,private static GoodsTypeAdd goodsTypeAdd = new GoodsTypeAdd();//获取实例的唯一方式public static GoodsTypeAdd getGoodsTypeAdd(){ return goodsTypeAdd;}
2.封装了数据库连接类
package utiles;import java.sql.*;import java.util.ResourceBundle;public class JDBCUtils { private static String driver; private static String url; private static String username; private static String password; private static ResourceBundle 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"); } public static Connection getConnection() { Connection conn = null; try { Class.forName(driver); conn = DriverManager.getConnection(url, username, password); } catch (Exception e) { e.printStackTrace(); } return conn; } public static void release(Connection conn) { if (conn != null) { try { conn.close(); } catch (SQLException e) { e.printStackTrace(); } } } public static void release(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(); } } } public static void release(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.用户信息读取保存
从数据库读取数据写入本地的文件,一定程度上减少了数据库连接次数
package utiles;import java.io.*;import java.util.ArrayList;public class LoginConfig {public static void writeUser(String name,String id,String password,String money) {BufferedWriter bos = null;try {bos = new BufferedWriter(new FileWriter("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 blocke.printStackTrace();} catch (IOException e) {// TODO Auto-generated catch blocke.printStackTrace();}finally {try {if(bos!=null) {bos.close();}} catch (IOException e) {// TODO Auto-generated catch blocke.printStackTrace();}}}public static ArrayList<String> getUserList(){ArrayList<String> list = new ArrayList();BufferedReader bis;try {bis = new BufferedReader(new FileReader("password.txt"));String s = null;while((s=bis.readLine())!=null) {list.add(s);}} catch (FileNotFoundException e) {// TODO Auto-generated catch blocke.printStackTrace();} catch (IOException e) {// TODO Auto-generated catch blocke.printStackTrace();}return list;}public static void reset() {BufferedWriter bos = null;try {bos = new BufferedWriter(new FileWriter("password.txt"));} catch (FileNotFoundException e) {// TODO Auto-generated catch blocke.printStackTrace();} catch (IOException e) {// TODO Auto-generated catch blocke.printStackTrace();}finally {try {if(bos!=null) {bos.close();}} catch (IOException e) {// TODO Auto-generated catch blocke.printStackTrace();}}}}
四、个人总结
以上就是我的java课设分享,如果这篇文章有帮助到你,希望可以给作者点个赞👍,创作不易,如果有对后端技术、前端领域感兴趣的读者,可以关注下,互相交流学习 😉😉😉
来源地址:https://blog.csdn.net/weixin_51603038/article/details/127098277