基于Swing和Mysql的简单的仓库管理系统

本文介绍了一个基于Swing和Mysql的仓库管理系统,包含仓库模块(入库、出库、修改、删除、查询)和记录查询模块。通过JDBC连接数据库,采用C3P0数据源管理,涉及Bean类、Util工具类、Dao层、Service层以及Swing界面设计。
摘要由CSDN通过智能技术生成
本系统包含两个模块:仓库模块、记录模块
仓库模块功能:入库,出库,修改,删除,查询
记录模块功能:查询

接下来展示代码:

首先确定涉及到两个表,那就要做两个Bean类

下载链接

public class Goods {
   
    private int id;
    private String name;
    private int number;

    public Goods(){
   
        super();
    }

    public Goods(int id, String name, int number) {
   
        this.id = id;
        this.name = name;
        this.number = number;
    }
    public Goods(String name, int number) {
   

        this.name = name;
        this.number = number;
    }

    public int getId() {
   
        return id;
    }

    public void setId(int id) {
   
        this.id = id;
    }

    public String getName() {
   
        return name;
    }

    public void setName(String name) {
   
        this.name = name;
    }

    public int getNumber() {
   
        return number;
    }

    public void setNumber(int number) {
   
        this.number = number;
    }
}

import java.time.LocalDate;

public class Lists {
   

    private int id;
    private String name;
    private double score;
    private LocalDate birth;
    private String city;

    public String getWay() {
   
        return way;
    }

    public void setWay(String way) {
   
        this.way = way;
    }

    private String way;




    public int getId() {
   
        return id;
    }

    public void setId(int id) {
   
        this.id = id;
    }

    public String getName() {
   
        return name;
    }

    public void setName(String name) {
   
        this.name = name;
    }

    public double getScore() {
   
        return score;
    }

    public void setScore(double score) {
   
        this.score = score;
    }

    public LocalDate getBirth() {
   
        return birth;
    }

    public void setBirth(LocalDate birth) {
   
        this.birth = birth;
    }

    public String getCity() {
   
        return city;
    }

    public void setCity(String city) {
   
        this.city = city;
    }



    public Lists(String name, double score, LocalDate birth, String city,String way) {
   
        super();
        this.name = name;
        this.score = score;
        this.birth = birth;
        this.city = city;
        this.way = way;

    }

    @Override
    public String toString() {
   
        return "Student [id=" + id + ", name=" + name + ", score=" + score + ", birth=" + birth + ", city=" + city
                +", way=" + way
                + "]";
    }

    public Lists() {
   
        super();
    }

}

Util类

既然涉及到数据库,那就离不开JDBC,所以首先要创建工具类,同时还有一个数据处理的工具类
import com.mchange.v2.c3p0.ComboPooledDataSource;

import java.io.FileInputStream;
import java.io.InputStream;
import java.sql.Connection;
import java.sql.SQLException;
import java.util.Properties;

public class JdbcUtil {
   
    public static final ComboPooledDataSource ds=new ComboPooledDataSource();

    static
    {
   
        //加载连接数据库的信息
        try {
   
            InputStream is =new FileInputStream("jdbc.properties");
            Properties porp =new Properties();
            porp.load(is);
            is.close();
            //获取连接数据库信息
            String user =porp.getProperty("user");
            String pwd =porp.getProperty("pwd");
            String url=porp.getProperty("url");
            String driver =porp.getProperty("driver");
            //设置链接库的信息
            ds.setUser(user);
            ds.setDriverClass(driver);
            ds.setJdbcUrl(url);
            ds.setPassword(pwd);
        } catch (Exception e) {
   
            e.printStackTrace();
        }
    }

    public static Connection getConnection() {
   
        try {
   
            return ds.getConnection();
        } catch (SQLException e) {
   
            e.printStackTrace();
        }
        return null;
    }

    public static void release(Connection conn) {
   
        try {
   
            conn.close();
        } catch (SQLException e) {
   
            e.printStackTrace();
        }
    }
}

import java.time.LocalDate;
import java.util.Date;
import java.util.List;

public class DateUtil {
   

    //将日期转换为字符串
    public static LocalDate dateToLocalDate(Date date) {
   
        return LocalDate.ofEpochDay(date.getTime()/86400000).plusDays(1);
    }

    public static Object[][] listToArray(List<Lists> stus){
   
        Object[][] data=new Object[stus.size()][];
        int size=stus.size();
        for(int i=0;i<size;i++) {
   
            Lists s = stus.get(i);
            Object[] info =new Object[] {
   s.getId(),s.getName(),s.getScore(),s.getBirth(),s.getCity(),s.getWay()};
            data[i]=info;
        }
        return data;
    }
    public static Object[][] listToArray2(List<Goods> stus){
   
        Object[][] data=new Object[stus.size()][];
        int size=stus.size();
        for(int i=0;i<size;i++) {
   
            Goods s = stus.get(i);
            Object[] info =new Object[] {
   s.getId(),s.getName(),s.getNumber()};
            data[i]=info;
        }
        return data;
    }
}

接下来是Dao层

import java.sql.Connection;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.util.ArrayList;
import java.util.List;

public class ListDao {
   
    public void add(Lists s) throws SQLException {
   

        Connection conn = JdbcUtil.getConnection();
        String sql="insert into stus values(null,?,?,?,?,?)";
        PreparedStatement ps=conn.prepareStatement(sql);
        ps.setString(1, s.getName());
        ps.setDouble(2, s.getScore());
        ps.setObject(3, s.getBirth());
        ps.setString(4, s.getCity());
        ps.setString(5, s.getWay());

        ps.executeUpdate();

        JdbcUtil.release(conn);
    }

    public void add2(Goods s) throws SQLException {
   

        Connection conn = JdbcUtil.getConnection();
        String sql="insert into good values(null,?,?)";
        PreparedStatement ps=conn.prepareStatement(sql);
        ps.setString(1, s.getName());
        ps.setInt(2, s.getNumber());
        System.out.println(s.getName()+"..."+s.getNumber());
        ps.executeUpdate();
        JdbcUtil.release(conn);
    }



    public void detele2(int id) throws SQLException {
   
        Connection conn = JdbcUtil.getConnection();
        String sql="delete from good where id=?";
        PreparedStatement ps=conn.prepareStatement(sql);
        ps.setInt(1, id);
        ps.executeUpdate();
        JdbcUtil.release(conn);
    }


    public void update2(Goods s) throws SQLException {
   
        Connection conn = JdbcUtil.getConnection();
        String sql
  • 2
    点赞
  • 28
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
基于Java SwingMySQL的成绩管理系统用于帮助学校和教师方便地管理学生成绩。系统提供了简洁明了的用户界面,具有以下几个主要功能: 1. 学生管理:教师可以添加、编辑和删除学生的相关信息,例如学生姓名、学号和班级等。学生信息将存储在MySQL数据库中,以便可以随时进行查询和更新。 2. 成绩录入:教师可以通过系统录入学生的成绩。系统将按照学号和科目的方式进行数据录入,并且可以方便地进行修改和更新。录入的成绩将实时保存到MySQL数据库中。 3. 成绩查询:学生和教师都可以使用系统进行成绩查询。学生可以通过输入学号查询自己的成绩,并查看他们在不同科目上的表现。教师可以通过不同的查询条件查询整个班级或特定学生的成绩,并进行相应的统计和分析。 4. 数据分析:系统还提供了一些数据分析功能,例如计算学生的平均成绩、班级的平均成绩和科目的平均成绩等。这些统计结果可以帮助教师更好地了解学生的学业状况,并及时采取相应的措施。 5. 用户管理:系统还具有用户管理功能,可以添加和删除教师和学生的账户,并进行相应的权限管理。这样可以确保只有授权的用户才能访问和操作系统。 基于Java SwingMySQL的成绩管理系统具有直观、易用的特点,不仅提高了学校的教学效率,还为学生和教师提供了更好的成绩管理和查询的方式。同时,系统的可扩展性也使得可以根据实际需求进行功能的扩展和改进。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值