java servelet 电子会议厅项目二次开发

引言
该程序主要是一个电子会议系统,本项目包含两个角色,管理员与用户角色:
管理员角色包含以下功能: 查看预订,查看会议,部门管理,员工注册,添加会议室,审批员工等功能。
用户角色包含以下功能: 预定会议,查看我将参加的会议,会议室查看,通知信息查看,查看撤销会议等功能。
原始核心代码概览

点击查看代码
数据库连接:/*
Navicat Premium Data Transfer

Source Server : 本地连接
Source Server Type : MySQL
Source Server Version : 50726
Source Host : localhost:3306
Source Schema : coolmeeting

Target Server Type : MySQL
Target Server Version : 50726
File Encoding : 65001

Date: 28/06/2023 22:21:57
*/

SET NAMES utf8mb4;
SET FOREIGN_KEY_CHECKS = 0;

-- Table structure for counter

DROP TABLE IF EXISTS counter;
CREATE TABLE counter (
id int(11) NOT NULL AUTO_INCREMENT,
visit_count int(11) NOT NULL DEFAULT 0,
PRIMARY KEY (id) USING BTREE
) ENGINE = InnoDB AUTO_INCREMENT = 2 CHARACTER SET = utf8 COLLATE = utf8_general_ci COMMENT = '访问统计表' ROW_FORMAT = Dynamic;

-- Records of counter

INSERT INTO counter VALUES (1, 5);

-- Table structure for department

DROP TABLE IF EXISTS department;
CREATE TABLE department (
id int(11) NOT NULL AUTO_INCREMENT,
name varchar(20) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL DEFAULT '' COMMENT '部门名称',
PRIMARY KEY (id) USING BTREE
) ENGINE = InnoDB AUTO_INCREMENT = 21 CHARACTER SET = utf8 COLLATE = utf8_general_ci COMMENT = '部门表' ROW_FORMAT = Dynamic;

-- Records of department

INSERT INTO department VALUES (13, '技术部');
INSERT INTO department VALUES (14, '财务部');
INSERT INTO department VALUES (15, '市场部');
INSERT INTO department VALUES (16, '商务部');
INSERT INTO department VALUES (17, '销售部');
INSERT INTO department VALUES (20, '生产部');

-- Table structure for employee

DROP TABLE IF EXISTS employee;
CREATE TABLE employee (
id int(11) NOT NULL AUTO_INCREMENT,
username varchar(20) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL DEFAULT '',
password varchar(50) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL DEFAULT '',
real_name varchar(20) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL DEFAULT '',
phone varchar(20) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL DEFAULT '',
email varchar(50) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL DEFAULT '',
status varchar(5) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL DEFAULT '0' COMMENT '0正常 1未审核 2审核不通过',
dept_id int(11) NOT NULL DEFAULT 0,
role varchar(12) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT '1' COMMENT '1普通用户 2管理员',
PRIMARY KEY (id) USING BTREE
) ENGINE = InnoDB AUTO_INCREMENT = 38 CHARACTER SET = utf8 COLLATE = utf8_general_ci ROW_FORMAT = Dynamic;

-- Records of employee

INSERT INTO employee VALUES (8, 'wangxh', '1', '王晓华', '13671075406', 'wang@qq.com', '0', 13, '1');
INSERT INTO employee VALUES (9, 'linyk', '1', '林耀坤', '13671075406', 'yang@qq.com', '0', 13, '2');
INSERT INTO employee VALUES (10, 'xiongjw', '1', '熊杰文', '134555555', 'xiong@qq.com', '0', 13, '2');
INSERT INTO employee VALUES (11, 'wangmin', '1', '王敏', '1324554321', 'wangm@qq.com', '0', 15, '2');
INSERT INTO employee VALUES (15, 'huangml', '1', '黄美玲', 'huangml@qq.com', '13567898765', '0', 15, '2');
INSERT INTO employee VALUES (20, 'wangmin002', '1', '王敏', '13454332334', 'wang@qq.com', '0', 15, '2');
INSERT INTO employee VALUES (21, 'chenm', '1', '陈敏', '13559994444', 'www@aa.com', '2', 15, '2');
INSERT INTO employee VALUES (23, 'wangm', '1', '陈晨', '22·2', '11', '0', 14, '2');
INSERT INTO employee VALUES (25, 'wangxh222', '1', '王晓华', '111', '1', '0', 14, '2');
INSERT INTO employee VALUES (27, 'zhangsan', '1', '张三', '122', '22', '0', 16, '2');
INSERT INTO employee VALUES (28, 'lisi', '1', '李四', '1', '1', '0', 16, '2');
INSERT INTO employee VALUES (29, 'wangwu', '1', '王五', '1', '1', '0', 17, '2');
INSERT INTO employee VALUES (30, 'zhaoliu', '1', '赵六', '1', '1', '0', 13, '2');
INSERT INTO employee VALUES (32, 'fengqi', '1', '冯七', '1', '1', '0', 13, '2');
INSERT INTO employee VALUES (33, 'maba', '1', '马八', '1', '1', '0', 13, '2');
INSERT INTO employee VALUES (34, 'qianshi', '1', '钱十', '1', '1', '2', 13, '2');
INSERT INTO employee VALUES (35, 'zhoushiyi', '1', '周十一', '1', '1', '0', 13, '2');
INSERT INTO employee VALUES (36, 'wushier', '1', 'wushier', '1', '1', '1', 13, '2');
INSERT INTO employee VALUES (37, 'admin', '123456', 'admin', '11044445555', 'lixuanzi0521@163.com', '0', 13, '2');

-- Table structure for meeting

DROP TABLE IF EXISTS meeting;
CREATE TABLE meeting (
id int(11) NOT NULL AUTO_INCREMENT,
name varchar(20) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL DEFAULT '' COMMENT '会议名称',
room_id int(11) NULL DEFAULT NULL COMMENT '房间id',
reserve_id int(11) NULL DEFAULT NULL COMMENT '预定人id',
number_of_person int(11) NULL DEFAULT NULL COMMENT '预计参加人数',
start_time datetime(0) NULL DEFAULT NULL COMMENT '开始时间',
end_time datetime(0) NULL DEFAULT NULL COMMENT '结束时间',
reserve_time datetime(0) NULL DEFAULT NULL COMMENT '预定时间',
desc varchar(200) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL DEFAULT '' COMMENT '会议描述',
status varchar(20) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL COMMENT '会议状态 0正常 1取消',
cancel_time datetime(0) NULL DEFAULT NULL COMMENT '取消时间',
cancel_reason varchar(255) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL DEFAULT '' COMMENT '取消原因',
PRIMARY KEY (id) USING BTREE
) ENGINE = InnoDB AUTO_INCREMENT = 45 CHARACTER SET = utf8 COLLATE = utf8_general_ci COMMENT = '会议表' ROW_FORMAT = Dynamic;

-- Records of meeting

INSERT INTO meeting VALUES (25, 'ces', 5, 8, 12, '2020-08-25 12:00:00', '2020-08-30 12:00:00', '2020-01-10 23:02:39', '', '1', '2023-06-28 22:08:21', '有事');
INSERT INTO meeting VALUES (26, '测测', 7, 8, 12, '2020-08-25 12:00:00', '2020-08-30 12:00:00', '2020-01-17 23:04:18', '', '1', '2023-06-28 22:03:13', '不想要了');
INSERT INTO meeting VALUES (27, '我看看', 6, 8, 12, '2020-08-25 12:00:00', '2020-08-30 12:00:00', '2020-01-10 23:06:33', '我看看', '0', '2020-01-11 01:01:42', '');
INSERT INTO meeting VALUES (28, '运营会', 5, 8, 12, '2020-08-25 12:00:00', '2020-08-30 12:00:00', '2020-01-10 23:26:26', '测试', '0', '2020-08-23 14:49:06', 'ppppppppppppppp');
INSERT INTO meeting VALUES (29, '市场部会议', 6, 8, 12, '2020-08-25 12:00:00', '2020-08-30 12:00:00', '2020-01-10 23:44:41', '市场部', '0', NULL, '');
INSERT INTO meeting VALUES (30, '内部会议', 10, 8, 12, '2020-08-25 12:00:00', '2020-08-30 12:00:00', '2020-01-10 23:56:20', '内部会议', '0', NULL, '');
INSERT INTO meeting VALUES (31, '我的会议', 9, 8, 12, '2020-08-25 12:00:00', '2020-08-30 12:00:00', '2020-01-11 16:35:11', '测试', '0', NULL, '');
INSERT INTO meeting VALUES (32, '我的会议哈哈', 5, 8, 10, '2020-08-25 12:00:00', '2020-08-30 12:00:00', '2020-01-11 16:40:50', '', '0', NULL, '');
INSERT INTO meeting VALUES (33, '哈哈', 6, 8, 12, '2020-08-25 12:00:00', '2020-08-30 12:00:00', '2020-01-11 16:42:09', '你好', '0', '2020-01-12 11:44:57', '');
INSERT INTO meeting VALUES (34, '我的会议3', 8, 8, 12, '2020-08-25 12:00:00', '2020-08-30 12:00:00', '2020-01-11 16:42:51', '测试', '0', NULL, '');
INSERT INTO meeting VALUES (35, '我的会议', 7, 8, 12, '2020-08-25 12:00:00', '2020-08-30 12:00:00', '2020-01-11 16:44:35', '', '0', NULL, '');
INSERT INTO meeting VALUES (36, '我问问', 7, 8, 12, '2020-08-25 12:00:00', '2020-08-30 12:00:00', '2020-01-11 16:57:56', '地点', '0', '2020-01-11 16:59:57', '');
INSERT INTO meeting VALUES (37, '我的会议4', 7, 8, 12, '2020-08-25 12:00:00', '2020-08-30 12:00:00', '2020-01-11 16:59:49', '我的会议', '0', NULL, '');
INSERT INTO meeting VALUES (38, '班会', 9, 8, 12, '2020-08-25 12:00:00', '2020-08-30 12:00:00', '2020-01-12 11:49:17', '班会', '1', '2020-01-12 11:49:37', '');
INSERT INTO meeting VALUES (39, '测试会议', 5, 8, 12, '2020-08-25 12:00:00', '2020-08-30 12:00:00', '2020-01-14 14:44:07', 'ss', '0', NULL, '');
INSERT INTO meeting VALUES (40, '市场研究会议', 5, 8, 99, '2020-08-25 12:00:00', '2020-08-30 12:00:00', '2020-08-16 21:23:45', '222222222222222222222', '0', NULL, '');
INSERT INTO meeting VALUES (41, '哈哈哈', 17, 8, 99, '2020-08-25 12:00:00', '2020-08-30 12:00:00', '2020-08-21 14:28:36', 'aaaaaaaaaaaaaaaaaaa', '0', NULL, '');
INSERT INTO meeting VALUES (42, 'name', 7, 8, 20, '2020-04-29 12:02:05', '2020-04-29 12:02:05', '2023-06-12 22:04:26', 'ceshi', '0', NULL, '');
INSERT INTO meeting VALUES (43, 'name', 7, 8, 20, '2020-04-29 12:02:05', '2020-04-29 12:02:05', '2023-06-12 22:38:33', 'ceshi', '0', NULL, '');
INSERT INTO meeting VALUES (44, 'name', 7, 8, 20, '2020-04-29 12:02:05', '2020-04-29 12:02:05', '2023-06-26 16:03:31', 'ceshi', '0', NULL, '');

-- Table structure for meeting_employee

DROP TABLE IF EXISTS meeting_employee;
CREATE TABLE meeting_employee (
id int(11) NOT NULL AUTO_INCREMENT,
meeting_id int(11) NOT NULL,
employee_id int(11) NULL DEFAULT NULL,
PRIMARY KEY (id) USING BTREE
) ENGINE = InnoDB AUTO_INCREMENT = 45 CHARACTER SET = utf8 COLLATE = utf8_general_ci COMMENT = '会议-员工表' ROW_FORMAT = Dynamic;

-- Records of meeting_employee

INSERT INTO meeting_employee VALUES (1, 28, 13);
INSERT INTO meeting_employee VALUES (2, 28, 23);
INSERT INTO meeting_employee VALUES (3, 28, 27);
INSERT INTO meeting_employee VALUES (4, 28, 16);
INSERT INTO meeting_employee VALUES (5, 29, 16);
INSERT INTO meeting_employee VALUES (6, 29, 13);
INSERT INTO meeting_employee VALUES (7, 29, 8);
INSERT INTO meeting_employee VALUES (8, 30, 15);
INSERT INTO meeting_employee VALUES (9, 30, 13);
INSERT INTO meeting_employee VALUES (10, 30, 8);
INSERT INTO meeting_employee VALUES (11, 30, 23);
INSERT INTO meeting_employee VALUES (12, 27, 8);
INSERT INTO meeting_employee VALUES (13, 26, 8);
INSERT INTO meeting_employee VALUES (14, 25, 8);
INSERT INTO meeting_employee VALUES (15, 28, 8);
INSERT INTO meeting_employee VALUES (16, 31, 8);
INSERT INTO meeting_employee VALUES (17, 31, 17);
INSERT INTO meeting_employee VALUES (18, 31, 23);
INSERT INTO meeting_employee VALUES (19, 32, 8);
INSERT INTO meeting_employee VALUES (20, 32, 17);
INSERT INTO meeting_employee VALUES (21, 33, 15);
INSERT INTO meeting_employee VALUES (22, 34, 8);
INSERT INTO meeting_employee VALUES (23, 34, 17);
INSERT INTO meeting_employee VALUES (24, 35, 8);
INSERT INTO meeting_employee VALUES (25, 36, 9);
INSERT INTO meeting_employee VALUES (26, 36, 8);
INSERT INTO meeting_employee VALUES (27, 37, 8);
INSERT INTO meeting_employee VALUES (28, 37, 23);
INSERT INTO meeting_employee VALUES (29, 38, 11);
INSERT INTO meeting_employee VALUES (30, 38, 16);
INSERT INTO meeting_employee VALUES (31, 38, 20);
INSERT INTO meeting_employee VALUES (32, 39, 13);
INSERT INTO meeting_employee VALUES (33, 40, 10);
INSERT INTO meeting_employee VALUES (34, 40, 8);
INSERT INTO meeting_employee VALUES (35, 40, 9);
INSERT INTO meeting_employee VALUES (36, 41, 10);
INSERT INTO meeting_employee VALUES (37, 41, 8);
INSERT INTO meeting_employee VALUES (38, 41, 9);
INSERT INTO meeting_employee VALUES (39, 42, 12);
INSERT INTO meeting_employee VALUES (40, 42, 13);
INSERT INTO meeting_employee VALUES (41, 43, 12);
INSERT INTO meeting_employee VALUES (42, 43, 13);
INSERT INTO meeting_employee VALUES (43, 44, 12);
INSERT INTO meeting_employee VALUES (44, 44, 13);

-- Table structure for room

DROP TABLE IF EXISTS room;
CREATE TABLE room (
id int(11) NOT NULL AUTO_INCREMENT,
room_num int(11) NOT NULL COMMENT '编号',
name varchar(20) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL DEFAULT '' COMMENT '名称',
capacity int(11) NULL DEFAULT NULL COMMENT '容量',
status varchar(5) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT '0' COMMENT '状态,0未占用,1已占用',
desc varchar(200) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL COMMENT '描述',
PRIMARY KEY (id) USING BTREE
) ENGINE = InnoDB AUTO_INCREMENT = 18 CHARACTER SET = utf8 COLLATE = utf8_general_ci COMMENT = '房间表' ROW_FORMAT = Dynamic;

-- Records of room

INSERT INTO room VALUES (5, 101, '第一会议室', 15, '1', '公共会议室');
INSERT INTO room VALUES (6, 102, '第二会议室', 5, '0', '管理部门会议室');
INSERT INTO room VALUES (7, 103, '第三会议室', 12, '0', '市场部专用会议室');
INSERT INTO room VALUES (8, 401, '第四会议室', 15, '0', '公共会议室');
INSERT INTO room VALUES (9, 201, '第五会议室', 15, '0', '最大会议室');
INSERT INTO room VALUES (10, 601, '第六会议室', 12, '0', '需要提前三天预定');
INSERT INTO room VALUES (15, 999, '第998会议室', 99, '0', '爱笑会议室');
INSERT INTO room VALUES (16, 998, '第999会议室', 98, '1', '游戏会议室');
INSERT INTO room VALUES (17, 996, '第10000会议室', 96, '0', '狼人杀会议室');

SET FOREIGN_KEY_CHECKS = 1;

Javaweb主要代码:


springmvc org.springframework.web.servlet.DispatcherServlet contextConfigLocation classpath:applicationContext.xml 1 springmvc / encoding org.springframework.web.filter.CharacterEncodingFilter encoding utf-8 forceRequestEncoding true forceResponseEncoding true encoding /* contextConfigLocation classpath:applicationContext.xml org.springframework.web.context.ContextLoaderListener 15
`
**项目主要组成功能**

用户管理:注册新用户、用户登录和身份验证、修改用户密码。
部门管理:添加新部门、更新部门信息、删除部门。
会议室管理:添加新会议室、更新会议室信息、查询会议室信息。
会议管理:查询会议信息、预定会议室、查看通知和取消会议。
员工状态管理:审批员工账号、更新员工状态。
通知功能:获取员工的通知信息,包括7天内的会议和已取消的会议。

项目类
LoginServlet:
功能:处理用户登录的Servlet。通过接收用户提交的账号和密码,调用EmployeeService进行登录验证。根据验证结果进行页面跳转。

SearchEmployeeServlet:
功能:处理员工搜索的Servlet。通过接收查询参数,调用EmployeeService进行员工信息搜索。将查询结果存储到request中,然后跳转到searchemployees.jsp页面展示搜索结果。

UpdateEmpStatusServlet:
功能:处理更新员工状态的Servlet。通过接收员工ID和新的状态,调用EmployeeService更新员工状态。根据更新结果进行页面跳转。
MeetingDetailsServlet:
功能:处理会议详情的Servlet。通过接收会议ID和类型参数,调用MeetingService获取会议详情和相关员工信息。将结果存储到request中,然后跳转到meetingdetails.jsp页面展示会议详情。

DoBookMeetingServlet:功能:处理预定会议的Servlet。通过接收预定会议的参数,调用MeetingService进行会议预定操作。根据预定结果进行页面跳转。

MeetingRoomServlet:功能:处理会议室信息的Servlet。通过接收会议室ID和其他相关参数,调用MeetingRoomService进行会议室信息的添加或修改操作。根据操作结果进行页面跳转。

NotificationsServlet:功能:处理通知信息的Servlet。通过调用MeetingService获取员工的通知信息,包括7天内的会议和已取消的会议。将通知信息存储到request中,然后跳转到notifications.jsp页面展示通知。

ChangePasswordServlet:功能:处理修改密码的Servlet。通过接收旧密码、新密码等参数,调用EmployeeService进行密码修改操作。根据修改结果进行页面跳转。

UpdateDepServlet:功能:处理更新部门信息的Servlet。通过接收部门ID和新的部门名称,调用DepartmentService更新部门信息。根据更新结果通过PrintWriter向前端返回相应信息。

AddDepServlet:功能:处理添加部门的Servlet。通过接收新的部门名称,调用DepartmentService插入新的部门信息。根据插入结果进行页面跳转。

DeleteDepSerlvet:功能:处理删除部门的Servlet。通过接收部门ID,调用DepartmentService进行删除部门操作。根据删除结果进行页面跳转。

这些Servlet类主要负责处理不同功能的HTTP请求,通过调用相应的服务类实现具体的业务逻辑。此外,还有其他的类,如EmployeeService、DepartmentService、MeetingService等,用于封装业务逻辑和数据库访问。

程序流程图:

项目在数据库连接上的一些小缺陷
1.硬编码连接信息: 原始代码中包含了从 Navicat Premium Data Transfer 工具生成的连接信息注释,这些信息并不适合在实际的应用程序中使用,因为它们包含了特定于工具的配置细节,而且可能会暴露敏感信息。

2.缺乏可配置性: 原始代码中直接包含了数据库的表结构和初始数据插入操作,这使得代码缺乏灵活性和可配置性。如果要更改数据库的结构或数据,需要直接修改代码,这样不利于代码的维护和管理。

3.单一文件包含所有内容: 原始代码将所有数据库表的结构和初始数据插入操作都放在了一个 SQL 文件中,这样使得文件变得庞大且难以管理。在实际开发中,应该将数据库相关的操作分成多个文件,以提高代码的可读性和维护性。

4.缺乏注释和说明: 原始代码中虽然包含了表结构和初始数据插入操作,但缺乏注释和说明,不利于他人理解代码的含义和目的。在实际开发中,应该为代码添加必要的注释和说明,以便他人能够快速理解代码的逻辑和用途。
改进与优化

点击查看代码
`-- ----------------------------
-- Table structure for counter
-- ----------------------------
DROP TABLE IF EXISTS `counter`;
CREATE TABLE `counter`  (
  `id` int(11) NOT NULL AUTO_INCREMENT,
  `visit_count` int(11) NOT NULL DEFAULT 0,
  PRIMARY KEY (`id`)
) ENGINE = InnoDB AUTO_INCREMENT = 2;

-- ----------------------------
-- Records of counter
-- ----------------------------
INSERT INTO `counter` VALUES (1, 5);

-- ---------------------------- 
-- Table structure for department
-- ----------------------------
DROP TABLE IF EXISTS `department`;
CREATE TABLE `department`  (
  `id` int(11) NOT NULL AUTO_INCREMENT,
  `name` varchar(20) NOT NULL DEFAULT '' COMMENT '部门名称',
  PRIMARY KEY (`id`)
) ENGINE = InnoDB AUTO_INCREMENT = 21;

-- ----------------------------
-- Records of department
-- ----------------------------
INSERT INTO `department` VALUES (13, '技术部');
INSERT INTO `department` VALUES (14, '财务部');
INSERT INTO `department` VALUES (15, '市场部');
INSERT INTO `department` VALUES (16, '商务部');
INSERT INTO `department` VALUES (17, '销售部');
INSERT INTO `department` VALUES (20, '生产部');

-- ----------------------------
-- Table structure for employee
-- ----------------------------
DROP TABLE IF EXISTS `employee`;
CREATE TABLE `employee`  (
  `id` int(11) NOT NULL AUTO_INCREMENT,
  `username` varchar(20) NOT NULL DEFAULT '',
  `password` varchar(50) NOT NULL DEFAULT '',
  `real_name` varchar(20) NOT NULL DEFAULT '',
  `phone` varchar(20) NOT NULL DEFAULT '',
  `email` varchar(50) NOT NULL DEFAULT '',
  `status` varchar(5) NOT NULL DEFAULT '0' COMMENT '0正常 1未审核 2审核不通过',
  `dept_id` int(11) NOT NULL DEFAULT 0,
  `role` varchar(12) NULL DEFAULT '1' COMMENT '1普通用户 2管理员',
  PRIMARY KEY (`id`)
) ENGINE = InnoDB AUTO_INCREMENT = 38;

-- ----------------------------
-- Records of employee
-- ----------------------------
INSERT INTO `employee` VALUES (8, 'wangxh', '1', '王晓华', '13671075406', 'wang@qq.com', '0', 13, '1');
INSERT INTO `employee` VALUES (9, 'linyk', '1', '林耀坤', '13671075406', 'yang@qq.com', '0', 13, '2');
INSERT INTO `employee` VALUES (10, 'xiongjw', '1', '熊杰文', '134555555', 'xiong@qq.com', '0', 13, '2');
INSERT INTO `employee` VALUES (11, 'wangmin', '1', '王敏', '1324554321', 'wangm@qq.com', '0', 15, '2');
INSERT INTO `employee` VALUES (15, 'huangml', '1', '黄美玲', 'huangml@qq.com', '13567898765', '0', 15, '2');
INSERT INTO `employee` VALUES (20, 'wangmin002', '1', '王敏', '13454332334', 'wang@qq.com', '0', 15, '2');
INSERT INTO `employee` VALUES (21, 'chenm', '1', '陈敏', '13559994444', 'www@aa.com', '2', 15, '2');
INSERT INTO `employee` VALUES (23, 'wangm', '1', '陈晨', '22·2', '11', '0', 14, '2');
INSERT INTO `employee` VALUES (25, 'wangxh222', '1', '王晓华', '111', '1', '0', 14, '2');
INSERT INTO `employee` VALUES (27, 'zhangsan', '1', '张三', '122', '22', '0', 16, '2');
INSERT INTO `employee` VALUES (28, 'lisi', '1', '李四', '1', '1', '0', 16, '2');
INSERT INTO `employee` VALUES (29, 'wangwu', '1', '王五', '1', '1', '0', 17, '2');
INSERT INTO `employee` VALUES (30, 'zhaoliu', '1', '赵六', '1', '1', '0', 13, '2');
INSERT INTO `employee` VALUES (32, 'fengqi', '1', '冯七', '1', '1', '0', 13, '2');
INSERT INTO `employee` VALUES (33, 'maba', '1', '马八', '1', '1', '0', 13, '2');
INSERT INTO `employee` VALUES (34, 'qianshi', '1', '钱十', '1', '1', '2', 13, '2');
INSERT INTO `employee` VALUES (35, 'zhoushiyi', '1', '周十一', '1', '1', '0', 13, '2');
INSERT INTO `employee` VALUES (36, 'wushier', '1', 'wushier', '1', '1', '1', 13, '2');
INSERT INTO `employee` VALUES (37, 'admin', '123456', 'admin', '11044445555', 'lixuanzi0521@163.com', '0', 13, '2');

-- ----------------------------
-- Table structure for meeting
-- ----------------------------
DROP TABLE IF EXISTS `meeting`;
CREATE TABLE `meeting`  (
  `id` int(11) NOT NULL AUTO_INCREMENT,
  `name` varchar(20) NOT NULL DEFAULT '' COMMENT '会议名称',
  `room_id` int(11) NULL DEFAULT NULL COMMENT '房间id',
  `reserve_id` int(11) NULL DEFAULT NULL COMMENT '预定人id',
  `number_of_person` int(11) NULL DEFAULT NULL COMMENT '预计参加人数',
  `start_time` datetime NULL DEFAULT NULL COMMENT '开始时间',
  `end_time` datetime NULL DEFAULT NULL COMMENT '结束时间',
  `reserve_time` datetime NULL DEFAULT NULL COMMENT '预定时间',
  `desc` varchar(200) NOT NULL DEFAULT '' COMMENT '会议描述',
  `status` varchar(20) NULL DEFAULT NULL COMMENT '会议状态 0
`
原始代码中包含了从 Navicat Premium Data Transfer 工具生成的注释和设置,这些信息在实际应用中并不需要。另外,可以将数据库连接信息封装到一个单独的配置文件中,以提高代码的可维护性和安全性。

结语
通过改进数据库结构和优化连接方式,系统的性能和稳定性得到了显著提升,数据的存储和管理更加高效,进而提高了用户体验和满意度。这次改进也让我更加熟悉了数据库设计和优化的技巧,增强了对系统架构和运行机制的理解,为未来的项目开发和数据库管理积累了宝贵经验。

posted @ 2024-03-04 20:44  yy1n  阅读(31)  评论(0编辑  收藏  举报