Eclipse+Java+Swing+Mysql实现员工信息管理系统

本文涉及的产品
RDS MySQL Serverless 基础系列,0.5-2RCU 50GB
云数据库 RDS MySQL,高可用系列 2核4GB
RDS MySQL Serverless 高可用系列,价值2615元额度,1个月
简介: Eclipse+Java+Swing+Mysql实现员工信息管理系统

一、系统介绍


1.开发环境


开发工具:Eclipse2021


JDK版本:jdk1.8


Mysql版本:8.0.13


2.技术选型


Java+Swing+Mysql


3.系统功能


1.管理员登录系统;


2.管理员查询员工信息,增加员工信息,修改员工信息,删除员工信息;


3.管理员查询部门信息,增加部门信息,修改部门信息,删除部门信息;


4.管理员查询职务信息,增加职务信息,修改职务信息,删除职务信息;


4.数据库

/*
 Navicat Premium Data Transfer
 Source Server         : MySQL
 Source Server Type    : MySQL
 Source Server Version : 80013
 Source Host           : 127.0.0.1:3306
 Source Schema         : swing_staff_management
 Target Server Type    : MySQL
 Target Server Version : 80013
 File Encoding         : 65001
 Date: 07/01/2022 21:39:20
*/
SET NAMES utf8mb4;
SET FOREIGN_KEY_CHECKS = 0;
-- ----------------------------
-- Table structure for dept
-- ----------------------------
DROP TABLE IF EXISTS `dept`;
CREATE TABLE `dept`  (
  `num` int(11) NULL DEFAULT NULL,
  `name` varchar(20) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL COMMENT '部门名称',
  `address` varchar(20) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL
) ENGINE = InnoDB CHARACTER SET = utf8 COLLATE = utf8_general_ci ROW_FORMAT = Dynamic;
-- ----------------------------
-- Records of dept
-- ----------------------------
INSERT INTO `dept` VALUES (101, '大数据部', '一楼');
INSERT INTO `dept` VALUES (102, '人力行政部', '二楼');
INSERT INTO `dept` VALUES (103, '后勤部', '三楼');
-- ----------------------------
-- Table structure for duty
-- ----------------------------
DROP TABLE IF EXISTS `duty`;
CREATE TABLE `duty`  (
  `num` int(4) NOT NULL COMMENT '职务名称',
  `name` varchar(20) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL,
  `low` varchar(10) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL,
  `high` varchar(10) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL
) ENGINE = InnoDB CHARACTER SET = utf8 COLLATE = utf8_general_ci ROW_FORMAT = Dynamic;
-- ----------------------------
-- Records of duty
-- ----------------------------
INSERT INTO `duty` VALUES (111, '职员', '10000', '20000');
INSERT INTO `duty` VALUES (112, '科长', '20000', '40000');
INSERT INTO `duty` VALUES (113, '部长', '40000', '60000');
INSERT INTO `duty` VALUES (114, '总监', '60000', '80000');
INSERT INTO `duty` VALUES (115, '总经理', '100000', '150000');
-- ----------------------------
-- Table structure for login
-- ----------------------------
DROP TABLE IF EXISTS `login`;
CREATE TABLE `login`  (
  `id` decimal(4, 0) NOT NULL,
  `username` varchar(20) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL,
  `password` varchar(20) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL,
  PRIMARY KEY (`id`) USING BTREE
) ENGINE = InnoDB CHARACTER SET = utf8 COLLATE = utf8_general_ci ROW_FORMAT = Dynamic;
-- ----------------------------
-- Records of login
-- ----------------------------
INSERT INTO `login` VALUES (1, 'admin', 'admin');
-- ----------------------------
-- Table structure for staff
-- ----------------------------
DROP TABLE IF EXISTS `staff`;
CREATE TABLE `staff`  (
  `num` varchar(20) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL,
  `name` varchar(20) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL,
  `sex` varchar(20) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL,
  `salary` varchar(20) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL,
  `phone` varchar(11) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL,
  `dept` varchar(20) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL,
  `duty` varchar(20) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL,
  PRIMARY KEY (`num`) USING BTREE
) ENGINE = InnoDB CHARACTER SET = utf8 COLLATE = utf8_general_ci ROW_FORMAT = Dynamic;
-- ----------------------------
-- Records of staff
-- ----------------------------
INSERT INTO `staff` VALUES ('1001', '张三', '男', '50000', '13332259632', '大数据部', '部长');
INSERT INTO `staff` VALUES ('1002', '李四', '男', '30000', '13332259632', '大数据部', '科长');
INSERT INTO `staff` VALUES ('1003', '王五', '男', '20000', '13332259632', '后勤部', '职员');
SET FOREIGN_KEY_CHECKS = 1;


二、系统展示


1.登录系统


fa330f82385b4262a5e1e579ace1dbac.jpg


2.主页面


d0e3d713bce740dfb1ef9027e23955d2.jpg


3.部门管理


c2a2ab28c3b5416e8728c172de213fce.jpg


4.职位管理


15fb8bd5f16743f5a8178e961e8f5bb1.jpg


5.员工管理


ded98287b6024cf0a9e66ca4bc9226c4.jpg


三、部分代码


AdminDao.java

package dao;
import java.sql.ResultSet;
import java.sql.SQLException;
import utils.DBUtil;
import vo.Admin;
public class AdminDao {
  // 判断有无此用户
  public static  boolean isUser(Admin admin) {
    String sql = "select * from login where username=? and  password = ?";
    ResultSet rs;
    // 定义数组用来存放账号和密码
    String[] adminString = new String[] {admin.getUserName(), admin.getPassword()};
    try {
      rs = DBUtil.execQuery(sql, adminString);
      if (rs.next())
        return true;
      else
        return false;
    } catch (SQLException e) {
      e.printStackTrace();
      return false;
    } finally {
      DBUtil.close();
    }
  }
  // 测试
  public static void main(String[] args) {
    Admin admin = new Admin();
    admin.setUserName("admin");
    admin.setPassword("admin");
    boolean flag = isUser(admin);
    System.out.println(flag);
  }
}

DeptDao.java

package dao;
import java.sql.ResultSet;
import java.sql.SQLException;
import utils.DBUtil;
import utils.SqlHelper;
import vo.Dept;
/**
 * 
 * 部门管理
 *
 */
public class DeptDao {
  static public int update(Dept dept, int flag) throws SQLException {
    int result = -1;
    String sqlCondition[] = null;
    try {
      switch (flag) {
      case SqlHelper.INSERT:
        sqlCondition = new String[] { dept.getNum(), dept.getName(), dept.getAddress() };
        break;
      case SqlHelper.DELETE:
        sqlCondition = new String[] { dept.getNum() };
        break;
      case SqlHelper.UPDATE:
        sqlCondition = new String[] { dept.getName(), dept.getAddress(), dept.getNum() };
        break;
      }
      result = DBUtil.execUpdate(SqlHelper.DeptSqls[flag], sqlCondition);
      return result;
    } catch (SQLException e) {
    } finally {
      DBUtil.close();
    }
    return result;
  }
  static public Dept query(final Dept dept) throws SQLException {
    ResultSet rs;
    try {
      rs = DBUtil.execQuery("select * from dept where num=?", new String[] { dept.getNum() });
      if (rs.next()) {
        dept.setName(rs.getString("name"));
        dept.setAddress(rs.getString("address"));
        System.out.println("查到该数据");
      } else {
        System.out.println("没有查到该数据");
        return null;
      }
    } catch (SQLException e) {
      // TODO Auto-generated catch block
      e.printStackTrace();
      return null;
    } finally {
      DBUtil.close();
    }
    return dept;
  }
}

DutyDao.java

package dao;
import java.sql.ResultSet;
import java.sql.SQLException;
import utils.DBUtil;
import utils.SqlHelper;
import vo.Duty;
/**
 * 
 * 职务管理
 *
 */
public class DutyDao {
  static public int update(Duty duty, int flag) throws SQLException {
    int result = -1;
    String sqlCondition[] = null;
    try {
      switch (flag) {
      case SqlHelper.INSERT:
        sqlCondition = new String[] { duty.getNum(), duty.getName(), duty.getLow(), duty.getHigh() };
        break;
      case SqlHelper.DELETE:
        sqlCondition = new String[] { duty.getNum() };
        break;
      case SqlHelper.UPDATE:
        sqlCondition = new String[] { duty.getName(), duty.getLow(), duty.getHigh(), duty.getNum() };
        break;
      }
      result = DBUtil.execUpdate(SqlHelper.DutySqls[flag], sqlCondition);
      return result;
    } catch (SQLException e) {
    } finally {
      DBUtil.close();
    }
    return result;
  }
  static public Duty query(final Duty duty) throws SQLException {
    ResultSet rs;
    try {
      rs = DBUtil.execQuery("select * from duty where num=?", new String[] { duty.getNum() });
      if (rs.next()) {
        duty.setNum(rs.getString("num"));
        duty.setName(rs.getString("name"));
        duty.setLow(rs.getString("low"));
        duty.setHigh(rs.getString("high"));
        System.out.println("查到该数据");
      } else {
        System.out.println("没有查到该数据");
        return null;
      }
    } catch (SQLException e) {
      // TODO Auto-generated catch block
      e.printStackTrace();
      return null;
    } finally {
      DBUtil.close();
    }
    return duty;
  }
}

StaffDao.java

package dao;
import java.sql.ResultSet;
import java.sql.SQLException;
import utils.DBUtil;
import utils.SqlHelper;
import vo.Staff;
/**
 * 
 * 职员管理
 *
 */
public class StaffDao {
  static public int update(Staff staff, int flag) throws SQLException {
    int result = -1;
    String sqlCondition[] = null;
    try {
      switch (flag) {
      case SqlHelper.INSERT:
        sqlCondition = new String[] { staff.getNum(), staff.getName(),
            staff.getSex(), staff.getSalary(), staff.getPhone(),
            staff.getDept(), staff.getDuty() };
        break;
      case SqlHelper.DELETE:
        sqlCondition = new String[] { staff.getNum() };
        break;
      case SqlHelper.UPDATE:
        sqlCondition = new String[] { staff.getName(), staff.getSex(),
            staff.getSalary(), staff.getPhone(), staff.getDept(),
            staff.getDuty(), staff.getNum() };
        break;
      }
      result = DBUtil.execUpdate(SqlHelper.StaffSqls[flag],
          sqlCondition);
      return result;
    } catch (SQLException e) {
    } finally {
      DBUtil.close();
    }
    return result;
  }
  static public Staff query(final Staff staff) throws SQLException {
    ResultSet rs;
    try {
      rs = DBUtil.execQuery("select * from staff where num=?",
          new String[] { staff.getNum() });
      if (rs.next()) {
        staff.setNum(rs.getString("num"));
        staff.setName(rs.getString("name"));
        staff.setSex(rs.getString("sex"));
        staff.setSalary(rs.getString("salary"));
        staff.setPhone(rs.getString("phone"));
        staff.setDept(rs.getString("dept"));
        staff.setDuty(rs.getString("duty"));
        System.out.println("查到该数据" + staff.getNum());
      } else {
        System.out.println("没有查到该数据");
        return null;
      }
    } catch (SQLException e) {
      e.printStackTrace();
      return null;
    } finally {
      DBUtil.close();
    }
    return staff;
  }
  static public ResultSet checkSalary(Staff staff) {
    ResultSet dutyRs = null;
    try {
      dutyRs = DBUtil.execQuery("select * from duty where name=?",
          new String[] { staff.getDuty() });
    } catch (SQLException e) {
      e.printStackTrace();
    }
    return dutyRs;
  }
  static public ResultSet checkDept(Staff staff) {
    ResultSet dutyRs = null;
    try {
      dutyRs = DBUtil.execQuery("select name from dept where name=?",
          new String[] { staff.getDept() });
    } catch (SQLException e) {
      e.printStackTrace();
    }
    return dutyRs;
  }
  static public ResultSet checkDuty(Staff staff) {
    ResultSet dutyRs = null;
    try {
      dutyRs = DBUtil.execQuery("select name from duty where name=?",
          new String[] { staff.getDuty() });
    } catch (SQLException e) {
      e.printStackTrace();
    }
    return dutyRs;
  }
}


四、其他


1.更多系统


JavaSwing系统系列实现


Java+Swing实现斗地主游戏


Java+Swing实现图书管理系统


Java+Swing实现医院管理系统


Java+Swing实现考试管理系统


Java+Swing实现酒店管理系统


Java+Swing实现超市管理系统


Java+Swing实现电影购票系统


Java+Swing实现仓库管理系统-1


Java+Swing实现仓库管理系统-2


Java+Swing实现进销存管理系统


Java+Swing实现自助取款机系统


Java+Swing实现通讯录管理系统


Java+Swing实现停车场管理系统


Java+Swing实现学生信息管理系统


Java+Swing实现员工工资管理系统


Java+Swing实现学生宿舍管理系统


Java+Swing实现学生选课管理系统


Java+Swing实现学生成绩管理系统


Java+Swing实现学校教材管理系统


Java+Swing实现学校教务管理系统


Java+Swing实现企业人事管理系统


Java+Swing实现电子相册管理系统


Java+Swing实现超市管理系统-TXT存储数据


Java+Swing实现自助取款机系统-TXT存储数据


Java+Swing实现宠物商店管理系统-TXT存储数据


Java+JSP系统系列实现

Java+JSP实现学生图书管理系统


Java+JSP实现学生信息管理系统


Java+JSP实现用户信息管理系统


Java+Servlet系统系列实现

Java+Servlet+JSP实现航空订票系统


Java+Servlet+JSP实现新闻发布系统


Java+Servlet+JSP学生宿舍管理系统


Java+Servlet+JSP实现图书管理系统


Java+Servlet+JSP实现停车场管理系统


Java+Servlet+JSP实现房屋租赁管理系统


Java+Servlet+JSP实现学生信息管理系统


Java+Servlet+JSP实现学生选课管理系统


Java+Servlet+JSPl实现学生选课签到系统


Java+Servlet+JSP实现宠物诊所管理系统


Java+Servlet+JSP实现学生成绩管理系统-1


Java+Servlet+JSP实现学生成绩管理系统-2


Java+SSM系统系列实现

Java+SSM+JSP实现图书管理系统


Java+SSM+JSP实现超市订单系统


Java+SSM+JSP实现网上考试系统


Java+SSM+JSP实现宠物商城系统


Java+SSM+Layui实现学生成绩管理系统


Java+SSM+Bootstrap实现学生信息管理系统


Java+SSH系统系列实现

Java+SSH+JSP实现在线考试系统


Java+SSH+JSP实现医院在线挂号系统


Java+Springboot系统系列实现

Java+Springboot+H-ui+Maven实现营销管理系统


Java+Springboot+Bootstrap+Maven实现网上商城系统


Java+Springboot+Bootstrap+Maven实现景区旅游管理系统


1.更多JavaWeb系统请关注专栏。


https://blog.csdn.net/helongqiang/category_10020130.html

https://blog.csdn.net/helongqiang/category_10020130.html


2.更多JavaSwing系统请关注专栏。


https://blog.csdn.net/helongqiang/category_6229101.html

https://blog.csdn.net/helongqiang/category_6229101.html


2.源码下载

Java+Swing+Mysql实现员工信息管理系统


3.运行项目

注意员工编号为4位数,职务和部门编号为3位数。管理员账号和密码都为admin。


请点击以下链接,部署你的项目。


Eclipse如何导入JavaSwing项目超详细图文教程


Eclipse如何导入JavaSwing项目超详细视频教程


4.备注

如有侵权请联系我删除。


5.支持博主

如果您觉得此文对您有帮助,请点赞加关注加收藏。


相关实践学习
每个IT人都想学的“Web应用上云经典架构”实战
本实验从Web应用上云这个最基本的、最普遍的需求出发,帮助IT从业者们通过“阿里云Web应用上云解决方案”,了解一个企业级Web应用上云的常见架构,了解如何构建一个高可用、可扩展的企业级应用架构。
MySQL数据库入门学习
本课程通过最流行的开源数据库MySQL带你了解数据库的世界。   相关的阿里云产品:云数据库RDS MySQL 版 阿里云关系型数据库RDS(Relational Database Service)是一种稳定可靠、可弹性伸缩的在线数据库服务,提供容灾、备份、恢复、迁移等方面的全套解决方案,彻底解决数据库运维的烦恼。 了解产品详情: https://www.aliyun.com/product/rds/mysql 
相关文章
|
6月前
|
存储 机器学习/深度学习 监控
如何监控员工的电脑——基于滑动时间窗口的Java事件聚合算法实现探析​
在企业管理场景中,如何监控员工的电脑操作行为是一个涉及效率与合规性的重要课题。传统方法依赖日志采集或屏幕截图,但数据量庞大且实时性不足。本文提出一种基于滑动时间窗口的事件聚合算法,通过Java语言实现高效、低资源占用的监控逻辑,为如何监控员工的电脑提供一种轻量化解决方案。
131 3
|
11月前
|
Java Android开发
Eclipse Java 构建路径
Eclipse Java 构建路径
135 3
|
11月前
|
Java Android开发
Eclipse 创建 Java 项目
Eclipse 创建 Java 项目
132 4
|
11月前
|
Java Android开发
Eclipse 创建 Java 接口
Eclipse 创建 Java 接口
104 1
|
11月前
|
Java Android开发
Eclipse 创建 Java 包
Eclipse 创建 Java 包
172 1
|
11月前
|
Java Android开发
Eclipse 创建 Java 类
Eclipse 创建 Java 类
136 0
|
存储 Java API
|
Java 网络安全 开发工具
新手入门Java。如何下载Eclipse、写出最基本的“Hello word”以及如何连接github并且上传项目。
新手入门Java。如何下载Eclipse、写出最基本的“Hello word”以及如何连接github并且上传项目。
172 0
|
存储 Oracle Java
Java面试题:描述如何使用Eclipse或IntelliJ IDEA进行Java开发?
Java面试题:描述如何使用Eclipse或IntelliJ IDEA进行Java开发?
151 0
|
28天前
|
安全 关系型数据库 MySQL
MySQL安全最佳实践:保护你的数据库
本文深入探讨了MySQL数据库的安全防护体系,涵盖认证安全、访问控制、网络安全、数据加密、审计监控、备份恢复、操作系统安全、应急响应等多个方面。通过具体配置示例,为企业提供了一套全面的安全实践方案,帮助强化数据库安全,防止数据泄露和未授权访问,保障企业数据资产安全。

推荐镜像

更多