一、系统介绍
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.登录系统
2.主页面
3.部门管理
4.职位管理
5.员工管理
三、部分代码
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系统请关注专栏。
2.更多JavaSwing系统请关注专栏。
2.源码下载
3.运行项目
注意员工编号为4位数,职务和部门编号为3位数。管理员账号和密码都为admin。
请点击以下链接,部署你的项目。
Eclipse如何导入JavaSwing项目超详细图文教程
4.备注
如有侵权请联系我删除。
5.支持博主
如果您觉得此文对您有帮助,请点赞加关注加收藏。祝您生活愉快!
版权归原作者 水坚石青 所有, 如有侵权,请联系我们删除。