基于javaweb的JSP+Servlet会议室管理系统(java+jsp+html+servlet+mysql)

运行环境

Java≥8、MySQL≥5.7、Tomcat≥8

开发工具

eclipse/idea/myeclipse/sts等均可配置运行

适用

课程设计,大作业,毕业设计,项目练习,学习演示等

功能说明

000023432402

010023432402

020023432402

030023432402

050023432402

060023432402

基于javaweb的JSP+Servlet会议室管理系统(java+jsp+html+servlet+mysql)

项目介绍

本项目包含两个角色,管理员与用户角色;

管理员角色包含以下功能: 查看预订,查看会议,部门管理,员工注册,添加会议室,审批员工等功能。

用户角色包含以下功能: 预定会议,查看我将参加的会议,会议室查看,通知信息查看,查看撤销会议等功能。

环境需要

1.运行环境:最好是java jdk 1.8,我们在这个平台上运行的。其他版本理论上也可以。 2.IDE环境:IDEA,Eclipse,Myeclipse都可以。推荐IDEA; 3.tomcat环境:Tomcat 7.x,8.x,9.x版本均可 4.硬件环境:windows 7/8/10 1G内存以上;或者 Mac OS;  5.数据库:MySql 5.7版本; 6.是否Maven项目:否;

技术栈

JSP+CSS+JavaScript+html+mysql+servlet

使用说明

  1. 使用Navicat或者其它工具,在mysql中创建对应名称的数据库,并导入项目的sql文件; 2. 使用IDEA/Eclipse/MyEclipse导入项目,Eclipse/MyEclipse导入时,若为maven项目请选择maven; 若为maven项目,导入成功后请执行maven clean;maven install命令,然后运行; 3. 将项目中dao/DBUtils.java配置文件中的数据库配置改为自己的配置; 4. 运行项目,输入localhost:8080/meeting/ 注:Tomcat中配置路径必须为meeting,否则会有异常; 管理员账号/密码:admin/admin 用户账号/密码:linyaokun/123456

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
    protected void doPost(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
int loginEmpId = ((Employee) req.getSession().getAttribute("loginUser")).getEmployeeid();
String oldPassword = req.getParameter("oldPassword");
String newPassword = req.getParameter("newPassword");
if (StringUtils.isEmptyOrWhitespaceOnly(oldPassword)||StringUtils.isEmptyOrWhitespaceOnly(newPassword)){
req.setAttribute("error", "密码不能为空");
req.getRequestDispatcher("/changepassword.jsp").forward(req, resp);
}

Employee employee = employeeService.getEmpByID(loginEmpId);
if (!employee.getPassword().equals(oldPassword)){
req.setAttribute("error", "旧密码不正确");
req.getRequestDispatcher("/changepassword.jsp").forward(req, resp);
}

int i = employeeService.changeEmpPWDById(loginEmpId,newPassword);
if (i == 1){
req.getRequestDispatcher("/login.jsp").forward(req, resp);

}else {
req.setAttribute("error", "修改失败");
req.getRequestDispatcher("/changepassword.jsp").forward(req, resp);
}
}

}
package org.sang.servlet;



/**
*/
public class DoBookMeetingServlet extends HttpServlet {
private MeetingService meetingService = new MeetingService();

@Override
protected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
doPost(req, resp);
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
        }
int vc = Integer.parseInt(visitcount.toString()) + 1;
sc.setAttribute("vc", vc);
if (login == 0) {
req.setAttribute("error", "用户待审批,请稍候");
req.getRequestDispatcher("/login.jsp").forward(req, resp);
} else if (login == 1) {
req.getSession().setAttribute("loginUser", employeeService.getLoginUser());
resp.sendRedirect(req.getContextPath() + "/notifications");
} else if (login == 2) {
req.setAttribute("error", "用户审批未通过,请重新注册");
req.getRequestDispatcher("/login.jsp").forward(req, resp);
} else if (login == 3) {
req.setAttribute("error", "用户名或者密码输入错误,请重新登录");
req.getRequestDispatcher("/login.jsp").forward(req, resp);
} else if (login == -1) {
req.setAttribute("error", "账号已关闭,登陆失败,请联系管理员");
req.getRequestDispatcher("/login.jsp").forward(req, resp);
}
}
}
package org.sang.servlet;



/**
*/
public class AddMeetingRoomServlet extends HttpServlet {
private MeetingRoomService meetingRoomService = new MeetingRoomService();

@Override
protected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
doPost(req, resp);
}

@Override
protected void doPost(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
String roomid = req.getParameter("roomid");
String roomnum = req.getParameter("roomnum");
String roomname = req.getParameter("roomname");
String capacity = req.getParameter("capacity");
String status = req.getParameter("status");
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
            req.getSession().setAttribute("loginUser", employeeService.getLoginUser());
resp.sendRedirect(req.getContextPath() + "/notifications");
} else if (login == 2) {
req.setAttribute("error", "用户审批未通过,请重新注册");
req.getRequestDispatcher("/login.jsp").forward(req, resp);
} else if (login == 3) {
req.setAttribute("error", "用户名或者密码输入错误,请重新登录");
req.getRequestDispatcher("/login.jsp").forward(req, resp);
} else if (login == -1) {
req.setAttribute("error", "账号已关闭,登陆失败,请联系管理员");
req.getRequestDispatcher("/login.jsp").forward(req, resp);
}
}
}
package org.sang.servlet;



/**
*/
public class AddMeetingRoomServlet extends HttpServlet {
private MeetingRoomService meetingRoomService = new MeetingRoomService();

@Override
protected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
doPost(req, resp);
}

@Override
protected void doPost(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
String roomid = req.getParameter("roomid");
String roomnum = req.getParameter("roomnum");
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
    @Override
protected void doPost(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
String meetingname = req.getParameter("meetingname");
String numberofparticipants = req.getParameter("numberofparticipants");
String starttime = req.getParameter("starttime");
String endtime = req.getParameter("endtime");
String roomid = req.getParameter("roomid");
String description = req.getParameter("description");
String[] selSelectedEmployees = req.getParameterValues("selSelectedEmployees");
//获取当前登录的用户对象
Employee loginUser = (Employee) req.getSession().getAttribute("loginUser");
Meeting meeting = new Meeting(meetingname, Integer.parseInt(roomid), loginUser.getEmployeeid(), Integer.parseInt(numberofparticipants), Timestamp.valueOf(starttime), Timestamp.valueOf(endtime), new Timestamp(System.currentTimeMillis()), description);
meetingService.insert(meeting, selSelectedEmployees);
resp.sendRedirect(req.getContextPath() + "/searchmeetings.html");
}
}
package org.sang.servlet;



/**
*/
public class DoRegServlet extends HttpServlet {
private EmployeeService employeeService = new EmployeeService();

@Override
protected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
doPost(req, resp);
}

@Override
protected void doPost(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
String employeename = req.getParameter("employeename");
String accountname = req.getParameter("accountname");
String password = req.getParameter("password");
String phone = req.getParameter("phone");
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
    @Override
protected void doPost(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
String meetingname = req.getParameter("meetingname");
String roomname = req.getParameter("roomname");
String reservername = req.getParameter("reservername");
String reservefromdate = req.getParameter("reservefromdate");
String reservetodate = req.getParameter("reservetodate");
String meetingfromdate = req.getParameter("meetingfromdate");
String meetingtodate = req.getParameter("meetingtodate");
String page = req.getParameter("page");
String count = req.getParameter("count");
if (page == null || "".equals(page)) {
page = "1";
}
if (count == null || "".equals(count)) {
count = "10";
}
List<Meeting> list = meetingService.searchMeeting(meetingname, roomname, reservername, reservefromdate, reservetodate, meetingfromdate, meetingtodate, Integer.parseInt(page), Integer.parseInt(count));
int totalCount = meetingService.getCount(meetingname, roomname, reservername, reservefromdate, reservetodate, meetingfromdate, meetingtodate);
int totalPage = totalCount / Integer.parseInt(count) + 1;
req.setAttribute("list", list);
req.setAttribute("totalCount", totalCount);
req.setAttribute("totalPage", totalPage);
req.setAttribute("page", page);
req.setAttribute("meetingname", meetingname);
req.setAttribute("roomname", roomname);
req.setAttribute("reservername", reservername);
req.setAttribute("reservefromdate", reservefromdate);
req.setAttribute("reservetodate", reservetodate);
req.setAttribute("meetingfromdate", meetingfromdate);
req.setAttribute("meetingtodate", meetingtodate);
req.setAttribute("count", count);
req.getRequestDispatcher("/searchmeetings.jsp").forward(req, resp);
}
}
package org.sang.servlet;



/**
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
            req.setAttribute("error", "账号已关闭,登陆失败,请联系管理员");
req.getRequestDispatcher("/login.jsp").forward(req, resp);
}
}
}
package org.sang.servlet;



/**
*/
public class AddMeetingRoomServlet extends HttpServlet {
private MeetingRoomService meetingRoomService = new MeetingRoomService();

@Override
protected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
doPost(req, resp);
}

@Override
protected void doPost(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
String roomid = req.getParameter("roomid");
String roomnum = req.getParameter("roomnum");
String roomname = req.getParameter("roomname");
String capacity = req.getParameter("capacity");
String status = req.getParameter("status");
String description = req.getParameter("description");
MeetingRoom meetingRoom = new MeetingRoom(Integer.parseInt(roomnum), roomname, Integer.parseInt(capacity), Integer.parseInt(status), description);
if (roomid == null || "".equals(roomid)) {
//添加会议室
int result = meetingRoomService.insert(meetingRoom);
if (result == 1) {
//去查看会议室页面
resp.sendRedirect(req.getContextPath() + "/getallmr");
} else {
req.setAttribute("error", "添加失败");
req.getRequestDispatcher("/addmeetingroom.jsp").forward(req, resp);
}
} else {


项目链接:
https://javayms.github.io?id=551122512008200nl
https://javayms.pages.dev?id=551122512008200nl