项目编号:BS-GX-033

开发技术:

后台:jsp+servlet+jdbc

前台:jsp+bootstrap

运行环境:

数据库:mysql5.7

JDK: 1.8

Maven: 3.9

开发工具:IDEA /Eclipse

本系统基于jsp实现了一个宿舍管理系统,功能完整,界面美观大方,交互简洁方便,比较适合做毕业设计使用。主要分为三个角色用户:管理员,宿舍管理员,学生

系统管理员:用户管理、宿舍楼管理、楼管管理、缺勤管理。

宿舍管理员主要包括:

缺勤管理、学生管理

学生主要包括:缺勤查看

系统 主要实现功能界面展示如下:

管理员登陆

学生管理

宿舍楼管理

缺勤管理

宿舍管理员登陆

缺勤管理

学生登陆系统

核心实现代码如下:

package com.servlet;import javax.servlet.ServletException;
import javax.servlet.annotation.WebServlet;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import javax.servlet.http.HttpSession;
import java.io.IOException;@WebServlet(name = "BlankServlet")
public class BlankServlet extends HttpServlet {@Overrideprotected void doGet(HttpServletRequest request, HttpServletResponse response)throws ServletException, IOException {this.doPost(request, response);}@Overrideprotected void doPost(HttpServletRequest request, HttpServletResponse response)throws ServletException, IOException {HttpSession session = request.getSession();Object currentUserType = session.getAttribute("currentUserType");if("admin".equals((String)currentUserType)) {request.setAttribute("mainPage", "admin/blank.jsp");request.getRequestDispatcher("mainAdmin.jsp").forward(request, response);} else if("dormManager".equals((String)currentUserType)) {request.setAttribute("mainPage", "dormManager/blank.jsp");request.getRequestDispatcher("mainManager.jsp").forward(request, response);} else if("student".equals((String)currentUserType)) {request.setAttribute("mainPage", "student/blank.jsp");request.getRequestDispatcher("mainStudent.jsp").forward(request, response);}}
}
package com.servlet;import java.io.IOException;
import java.sql.Connection;
import java.util.List;import javax.servlet.ServletException;
import javax.servlet.annotation.WebServlet;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import javax.servlet.http.HttpSession;import com.dao.DormBuildDao;
import com.model.DormBuild;
import com.model.DormManager;
import com.model.PageBean;
import com.util.DbUtil;
import com.util.StringUtil;@WebServlet(name = "DormBuildServlet")
public class DormBuildServlet extends HttpServlet {DbUtil dbUtil = new DbUtil();DormBuildDao dormBuildDao = new DormBuildDao();@Overrideprotected void doGet(HttpServletRequest request, HttpServletResponse response)throws ServletException, IOException {this.doPost(request, response);}@Overrideprotected void doPost(HttpServletRequest request, HttpServletResponse response)throws ServletException, IOException {request.setCharacterEncoding("utf-8");HttpSession session = request.getSession();String s_dormBuildName = request.getParameter("s_dormBuildName");String page = request.getParameter("page");String action = request.getParameter("action");DormBuild dormBuild = new DormBuild();if("preSave".equals(action)) {dormBuildPreSave(request, response);return;} else if("save".equals(action)){dormBuildSave(request, response);return;} else if("delete".equals(action)){dormBuildDelete(request, response);return;} else if("manager".equals(action)){dormBuildManager(request, response);return;} else if("addManager".equals(action)){dormBuildAddManager(request, response);} else if("move".equals(action)){managerMove(request, response);} else if("list".equals(action)) {if(StringUtil.isNotEmpty(s_dormBuildName)) {dormBuild.setDormBuildName(s_dormBuildName);}session.removeAttribute("s_dormBuildName");request.setAttribute("s_dormBuildName", s_dormBuildName);} else if("search".equals(action)){if(StringUtil.isNotEmpty(s_dormBuildName)) {dormBuild.setDormBuildName(s_dormBuildName);session.setAttribute("s_dormBuildName", s_dormBuildName);}else {session.removeAttribute("s_dormBuildName");}} else {if(StringUtil.isNotEmpty(s_dormBuildName)) {dormBuild.setDormBuildName(s_dormBuildName);session.setAttribute("s_dormBuildName", s_dormBuildName);}if(StringUtil.isEmpty(s_dormBuildName)) {Object o = session.getAttribute("s_dormBuildName");if(o!=null) {dormBuild.setDormBuildName((String)o);}}}if(StringUtil.isEmpty(page)) {page="1";}Connection con = null;PageBean pageBean = new PageBean(Integer.parseInt(page), 5);request.setAttribute("pageSize", pageBean.getPageSize());request.setAttribute("page", pageBean.getPage());try {con=dbUtil.getCon();List<DormBuild> dormBuildList = dormBuildDao.dormBuildList(con, pageBean, dormBuild);int total=dormBuildDao.dormBuildCount(con, dormBuild);String pageCode = this.genPagation(total, Integer.parseInt(page), 5);request.setAttribute("pageCode", pageCode);request.setAttribute("dormBuildList", dormBuildList);request.setAttribute("mainPage", "admin/dormBuild.jsp");request.getRequestDispatcher("mainAdmin.jsp").forward(request, response);} catch (Exception e) {e.printStackTrace();} finally {try {dbUtil.closeCon(con);} catch (Exception e) {e.printStackTrace();}}}private void managerMove(HttpServletRequest request,HttpServletResponse response) {String dormBuildId = request.getParameter("dormBuildId");String dormManagerId = request.getParameter("dormManagerId");Connection con = null;try {con = dbUtil.getCon();dormBuildDao.managerUpdateWithId(con, dormManagerId, "0");request.getRequestDispatcher("dormBuild?action=manager&dormBuildId="+dormBuildId).forward(request, response);} catch (Exception e) {e.printStackTrace();}}private void dormBuildAddManager(HttpServletRequest request,HttpServletResponse response) {String dormBuildId = request.getParameter("dormBuildId");String dormManagerId = request.getParameter("dormManagerId");Connection con = null;try {con = dbUtil.getCon();dormBuildDao.managerUpdateWithId(con, dormManagerId, dormBuildId);request.getRequestDispatcher("dormBuild?action=manager&dormBuildId="+dormBuildId).forward(request, response);} catch (Exception e) {e.printStackTrace();}}private void dormBuildManager(HttpServletRequest request,HttpServletResponse response) {String dormBuildId = request.getParameter("dormBuildId");Connection con = null;try {con = dbUtil.getCon();List<DormManager> managerListWithId = dormBuildDao.dormManWithBuildId(con, dormBuildId);List<DormManager> managerListToSelect = dormBuildDao.dormManWithoutBuild(con);request.setAttribute("dormBuildId", dormBuildId);request.setAttribute("managerListWithId", managerListWithId);request.setAttribute("managerListToSelect", managerListToSelect);request.setAttribute("mainPage", "admin/selectManager.jsp");request.getRequestDispatcher("mainAdmin.jsp").forward(request, response);} catch (Exception e) {e.printStackTrace();}}private void dormBuildDelete(HttpServletRequest request,HttpServletResponse response) {String dormBuildId = request.getParameter("dormBuildId");Connection con = null;try {con = dbUtil.getCon();if(dormBuildDao.existManOrDormWithId(con, dormBuildId)) {request.setAttribute("error", "宿舍楼下有宿舍或宿管,不能删除该宿舍楼");} else {dormBuildDao.dormBuildDelete(con, dormBuildId);}request.getRequestDispatcher("dormBuild?action=list").forward(request, response);} catch (Exception e) {e.printStackTrace();} finally {try {dbUtil.closeCon(con);} catch (Exception e) {e.printStackTrace();}}}private void dormBuildSave(HttpServletRequest request,HttpServletResponse response)throws ServletException, IOException {String dormBuildId = request.getParameter("dormBuildId");String dormBuildName = request.getParameter("dormBuildName");String detail = request.getParameter("detail");DormBuild dormBuild = new DormBuild(dormBuildName, detail);if(StringUtil.isNotEmpty(dormBuildId)) {dormBuild.setDormBuildId(Integer.parseInt(dormBuildId));}Connection con = null;try {con = dbUtil.getCon();int saveNum = 0;if(StringUtil.isNotEmpty(dormBuildId)) {saveNum = dormBuildDao.dormBuildUpdate(con, dormBuild);} else {saveNum = dormBuildDao.dormBuildAdd(con, dormBuild);}if(saveNum > 0) {request.getRequestDispatcher("dormBuild?action=list").forward(request, response);} else {request.setAttribute("dormBuild", dormBuild);request.setAttribute("error", "保存失败");request.setAttribute("mainPage", "dormBuild/dormBuildSave.jsp");request.getRequestDispatcher("mainAdmin.jsp").forward(request, response);}} catch (Exception e) {e.printStackTrace();} finally {try {dbUtil.closeCon(con);} catch (Exception e) {e.printStackTrace();}}}private void dormBuildPreSave(HttpServletRequest request,HttpServletResponse response)throws ServletException, IOException {String dormBuildId = request.getParameter("dormBuildId");if(StringUtil.isNotEmpty(dormBuildId)) {Connection con = null;try {con = dbUtil.getCon();DormBuild dormBuild = dormBuildDao.dormBuildShow(con, dormBuildId);request.setAttribute("dormBuild", dormBuild);} catch (Exception e) {e.printStackTrace();} finally {try {dbUtil.closeCon(con);} catch (Exception e) {e.printStackTrace();}}}request.setAttribute("mainPage", "admin/dormBuildSave.jsp");request.getRequestDispatcher("mainAdmin.jsp").forward(request, response);}private String genPagation(int totalNum, int currentPage, int pageSize){int totalPage = totalNum%pageSize==0?totalNum/pageSize:totalNum/pageSize+1;StringBuffer pageCode = new StringBuffer();pageCode.append("<li><a href='dormBuild?page=1'>首页</a></li>");if(currentPage==1) {pageCode.append("<li class='disabled'><a href='#'>上一页</a></li>");}else {pageCode.append("<li><a href='dormBuild?page="+(currentPage-1)+"'>上一页</a></li>");}for(int i=currentPage-2;i<=currentPage+2;i++) {if(i<1||i>totalPage) {continue;}if(i==currentPage) {pageCode.append("<li class='active'><a href='#'>"+i+"</a></li>");} else {pageCode.append("<li><a href='dormBuild?page="+i+"'>"+i+"</a></li>");}}if(currentPage==totalPage) {pageCode.append("<li class='disabled'><a href='#'>下一页</a></li>");} else {pageCode.append("<li><a href='dormBuild?page="+(currentPage+1)+"'>下一页</a></li>");}pageCode.append("<li><a href='dormBuild?page="+totalPage+"'>尾页</a></li>");return pageCode.toString();}
}
package com.servlet;import java.io.IOException;
import java.sql.Connection;
import java.util.List;import javax.servlet.ServletException;
import javax.servlet.annotation.WebServlet;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import javax.servlet.http.HttpSession;import com.dao.DormManagerDao;
import com.model.DormManager;
import com.model.PageBean;
import com.util.DbUtil;
import com.util.StringUtil;@WebServlet(name = "DormManagerServlet")
public class DormManagerServlet extends HttpServlet {DbUtil dbUtil = new DbUtil();DormManagerDao dormManagerDao = new DormManagerDao();@Overrideprotected void doGet(HttpServletRequest request, HttpServletResponse response)throws ServletException, IOException {this.doPost(request, response);}@Overrideprotected void doPost(HttpServletRequest request, HttpServletResponse response)throws ServletException, IOException {request.setCharacterEncoding("utf-8");HttpSession session = request.getSession();String s_dormManagerText = request.getParameter("s_dormManagerText");String searchType = request.getParameter("searchType");String page = request.getParameter("page");String action = request.getParameter("action");DormManager dormManager = new DormManager();if("preSave".equals(action)) {dormManagerPreSave(request, response);return;} else if("save".equals(action)){dormManagerSave(request, response);return;} else if("delete".equals(action)){dormManagerDelete(request, response);return;} elseif("list".equals(action)) {if(StringUtil.isNotEmpty(s_dormManagerText)) {if("name".equals(searchType)) {dormManager.setName(s_dormManagerText);} else if("userName".equals(searchType)) {dormManager.setUserName(s_dormManagerText);}}session.removeAttribute("s_dormManagerText");session.removeAttribute("searchType");request.setAttribute("s_dormManagerText", s_dormManagerText);request.setAttribute("searchType", searchType);} else if("search".equals(action)){if (StringUtil.isNotEmpty(s_dormManagerText)) {if ("name".equals(searchType)) {dormManager.setName(s_dormManagerText);} else if ("userName".equals(searchType)) {dormManager.setUserName(s_dormManagerText);}session.setAttribute("searchType", searchType);session.setAttribute("s_dormManagerText", s_dormManagerText);} else {session.removeAttribute("s_dormManagerText");session.removeAttribute("searchType");}} else {if(StringUtil.isNotEmpty(s_dormManagerText)) {if("name".equals(searchType)) {dormManager.setName(s_dormManagerText);} else if("userName".equals(searchType)) {dormManager.setUserName(s_dormManagerText);}session.setAttribute("searchType", searchType);session.setAttribute("s_dormManagerText", s_dormManagerText);}if(StringUtil.isEmpty(s_dormManagerText)) {Object o1 = session.getAttribute("s_dormManagerText");Object o2 = session.getAttribute("searchType");if(o1!=null) {if("name".equals((String)o2)) {dormManager.setName((String)o1);} else if("userName".equals((String)o2)) {dormManager.setUserName((String)o1);}}}}if(StringUtil.isEmpty(page)) {page="1";}Connection con = null;PageBean pageBean = new PageBean(Integer.parseInt(page), 5);request.setAttribute("pageSize", pageBean.getPageSize());request.setAttribute("page", pageBean.getPage());try {con=dbUtil.getCon();List<DormManager> dormManagerList = dormManagerDao.dormManagerList(con, pageBean, dormManager);int total=dormManagerDao.dormManagerCount(con, dormManager);String pageCode = this.genPagation(total, Integer.parseInt(page),5);request.setAttribute("pageCode", pageCode);request.setAttribute("dormManagerList", dormManagerList);request.setAttribute("mainPage", "admin/dormManager.jsp");request.getRequestDispatcher("mainAdmin.jsp").forward(request, response);} catch (Exception e) {e.printStackTrace();} finally {try {dbUtil.closeCon(con);} catch (Exception e) {e.printStackTrace();}}}private void dormManagerDelete(HttpServletRequest request,HttpServletResponse response) {String dormManagerId = request.getParameter("dormManagerId");Connection con = null;try {con = dbUtil.getCon();dormManagerDao.dormManagerDelete(con, dormManagerId);request.getRequestDispatcher("dormManager?action=list").forward(request, response);} catch (Exception e) {e.printStackTrace();} finally {try {dbUtil.closeCon(con);} catch (Exception e) {e.printStackTrace();}}}private void dormManagerSave(HttpServletRequest request,HttpServletResponse response)throws ServletException, IOException {String dormManagerId = request.getParameter("dormManagerId");String userName = request.getParameter("userName");String password = request.getParameter("password");String name = request.getParameter("name");String sex = request.getParameter("sex");String tel = request.getParameter("tel");DormManager dormManager = new DormManager(userName, password, name, sex, tel);if(StringUtil.isNotEmpty(dormManagerId)) {dormManager.setDormManagerId(Integer.parseInt(dormManagerId));}Connection con = null;try {con = dbUtil.getCon();int saveNum = 0;if(StringUtil.isNotEmpty(dormManagerId)) {saveNum = dormManagerDao.dormManagerUpdate(con, dormManager);} else if(dormManagerDao.haveManagerByUser(con, dormManager.getUserName())){request.setAttribute("dormManager", dormManager);request.setAttribute("error", "该用户名已存在");request.setAttribute("mainPage", "admin/dormManagerSave.jsp");request.getRequestDispatcher("mainAdmin.jsp").forward(request, response);try {dbUtil.closeCon(con);} catch (Exception e) {e.printStackTrace();}return;} else {saveNum = dormManagerDao.dormManagerAdd(con, dormManager);}if(saveNum > 0) {request.getRequestDispatcher("dormManager?action=list").forward(request, response);} else {request.setAttribute("dormManager", dormManager);request.setAttribute("error", "保存失败");request.setAttribute("mainPage", "admin/dormManagerSave.jsp");request.getRequestDispatcher("mainAdmin.jsp").forward(request, response);}} catch (Exception e) {e.printStackTrace();} finally {try {dbUtil.closeCon(con);} catch (Exception e) {e.printStackTrace();}}}private void dormManagerPreSave(HttpServletRequest request,HttpServletResponse response)throws ServletException, IOException {String dormManagerId = request.getParameter("dormManagerId");if(StringUtil.isNotEmpty(dormManagerId)) {Connection con = null;try {con = dbUtil.getCon();DormManager dormManager = dormManagerDao.dormManagerShow(con, dormManagerId);request.setAttribute("dormManager", dormManager);} catch (Exception e) {e.printStackTrace();} finally {try {dbUtil.closeCon(con);} catch (Exception e) {e.printStackTrace();}}}request.setAttribute("mainPage", "admin/dormManagerSave.jsp");request.getRequestDispatcher("mainAdmin.jsp").forward(request, response);}private String genPagation(int totalNum, int currentPage, int pageSize){int totalPage = totalNum%pageSize==0?totalNum/pageSize:totalNum/pageSize+1;StringBuffer pageCode = new StringBuffer();pageCode.append("<li><a href='dormManager?page=1'>首页</a></li>");if(currentPage==1) {pageCode.append("<li class='disabled'><a href='#'>上一页</a></li>");}else {pageCode.append("<li><a href='dormManager?page="+(currentPage-1)+"'>上一页</a></li>");}for(int i=currentPage-2;i<=currentPage+2;i++) {if(i<1||i>totalPage) {continue;}if(i==currentPage) {pageCode.append("<li class='active'><a href='#'>"+i+"</a></li>");} else {pageCode.append("<li><a href='dormManager?page="+i+"'>"+i+"</a></li>");}}if(currentPage==totalPage) {pageCode.append("<li class='disabled'><a href='#'>下一页</a></li>");} else {pageCode.append("<li><a href='dormManager?page="+(currentPage+1)+"'>下一页</a></li>");}pageCode.append("<li><a href='dormManager?page="+totalPage+"'>尾页</a></li>");return pageCode.toString();}
}

毕业设计:基于Web实现多用户宿舍管理系统相关推荐

  1. java毕业设计基于web的学校工资管理系统Mybatis+系统+数据库+调试部署

    java毕业设计基于web的学校工资管理系统Mybatis+系统+数据库+调试部署 java毕业设计基于web的学校工资管理系统Mybatis+系统+数据库+调试部署 本源码技术栈: 项目架构:B/S ...

  2. [附源码]java毕业设计基于web的停车收费管理系统

    项目运行 环境配置: Jdk1.8 + Tomcat7.0 + Mysql + HBuilderX(Webstorm也行)+ Eclispe(IntelliJ IDEA,Eclispe,MyEclis ...

  3. [附源码]SSM计算机毕业设计基于web的停车收费管理系统JAVA

    项目运行 环境配置: Jdk1.8 + Tomcat7.0 + Mysql + HBuilderX(Webstorm也行)+ Eclispe(IntelliJ IDEA,Eclispe,MyEclis ...

  4. [附源码]java+ssm计算机毕业设计基于web的教学资源管理系统01jkz(源码+程序+数据库+部署)

    项目运行 项目含有源码(见文末).文档.程序.数据库.配套开发软件.软件安装教程 环境配置: Jdk1.8 + Tomcat7.0 + Mysql + HBuilderX(Webstorm也行)+ E ...

  5. 毕业设计-基于web实现药房管理系统

    毕业设计的流程 第一步先确定毕业选题,选好导师.在这里说明一下,不同的导师带毕业设计的学生要求不同,有些导师可能会比较严格,具体选择导师这块根据自己的经验或者咨询本校的学长学姐. 选好毕业题目之后,就 ...

  6. java毕业设计基于Web的人事管理系统的设计与实现mybatis+源码+调试部署+系统+数据库+lw

    java毕业设计基于Web的人事管理系统的设计与实现mybatis+源码+调试部署+系统+数据库+lw java毕业设计基于Web的人事管理系统的设计与实现mybatis+源码+调试部署+系统+数据库 ...

  7. springboot+基于web的传染病信息管理系统的设计与实现 毕业设计-附源码221124

    基于web的传染病信息管理系统的设计与实现 摘 要 传染病报告是传染病防控工作的重要内容,医疗机构及其执行职务的人员开展传染病疫情报告工作是中华人民共和国传染病防治法>第三十条赋予的法定职责.传 ...

  8. 计算机毕业设计ssm基于web的教学资源管理系统01jkz系统+程序+源码+lw+远程部署

    计算机毕业设计ssm基于web的教学资源管理系统01jkz系统+程序+源码+lw+远程部署 计算机毕业设计ssm基于web的教学资源管理系统01jkz系统+程序+源码+lw+远程部署 本源码技术栈: ...

  9. (附源码)计算机毕业设计SSM基于web的企业人事管理系统

    (附源码)计算机毕业设计SSM基于web的企业人事管理系统 项目运行 环境配置: Jdk1.8 + Tomcat7.0 + Mysql + HBuilderX(Webstorm也行)+ Eclispe ...

最新文章

  1. 这个宝藏工具,给你一种黑客般的感觉
  2. 02-Unity深入浅出(二)
  3. python telnet 交互_Python判断telnet通不通的实例
  4. sudo apt-get install libstdc++6
  5. 2017.3.12 lzy 测试
  6. Python链接Sql server
  7. leetcode题库1277-- 统计全为 1 的正方形子矩阵
  8. python calendar.isleap_calendar在python3时间中常用函数举例详解
  9. 基于NFC的Android读写软件,基于Android的NFC商场助手软件的设计与实现
  10. 博士德霸道软件_霸道+网络版7.0
  11. 黑龙江省黑河市谷歌高清卫星地图下载
  12. windows server 2012显示桌面图标
  13. 【元宵节】中国人民大学与加拿大女王大学金融硕士项目与你的那份“缘”
  14. html中图片连续滚动代码,[转载]网页设计中的图片连续滚动效果——代码
  15. (读后摘抄)《计算机程序设计语言的发展》_王汝传
  16. 如今网络技术日新月异,网络架构师们又如何演变?
  17. 单片机c语言中p1asf,基于51单片机的蓄水池自动控制系统 毕业设计.doc
  18. Nvidia TX2爬坑过程——1、入手刷机教程
  19. android p nokia 6,Nokia 6评测 | Nokia 6系统体验_Nokia 6怎么样_诺基亚最新手机_什么值得买...
  20. matlab 变量 鼠标 黑屏,消除运行MATLAB生成独立可执行程序的DOS黑屏

热门文章

  1. FPGA之道(26)VHDL初始化
  2. 软件隐喻的本质与模式
  3. 磁盘空间神秘消失事件
  4. 算法系列之住酒店最少天数问题
  5. java File类笔记
  6. 开源应用架构之​Selenium WebDriver讲解
  7. 牛人是怎样用函数实现本地化测试的
  8. Xilinx FIR IP core滤波器系数的重载方法
  9. 虚拟机下Linux安装图解之四:VMware Tools 的安装
  10. 如何实现良好的隔空操作体验