项目描述
临近学期结束,还是毕业设计,你还在做java程序网络编程,期末作业,老师的作业要求觉得大了吗?不知道毕业设计该怎么办?网页功能的数量是否太多?没有合适的类型或系统?等等。这里根据疫情当下,你想解决的问题,今天给大家介绍一篇基于JavaWeb的校园故障报修系统的设计与实现。
功能需求
早期学校各种故障问题都是通过外边的去找专门处理的维修师傅,列如在学生正常上课时可能出现的电路故障或是网络故障,为了不影响学生们的正常上课,都是需要紧急处理的,针对不同类型的问题需要专人解决,非常考验学校的管理和人才齐全问题。可能一个很小的问题都需要一到两天才能解决,为了能够提高一个学校的教育质量和校园建设化。随着教育信息化的发展和校园网络的发展,如何有效地管理校园网硬件设备和软件系统。避免因为外界因素影响授课的正常进行,解决互联网技术建设校园故障报修系统,通过系统进行对故障进行分类,针对不同类型的故障进行派发处理的工单,并且指定人进行维护发送通知,职工能够快速的收到通知进行做出问题的处理反应。并能知道故障问题的所在进行精准的定位问题,并做到有效的处理,事后对处理的结果进行在故障报修系统进行反馈,并完成工单的闭环。更有利于以后针对此问题的处理作出总结和统计。
具备以下功能:
本文研究的是通过构建校园故障报修系统利用系统流程化处理的优势进行统一的管理,通过调查和分析现在校园故障问题的相关信息,综合评价了我国校园系统的现状和以及今后的发展趋势,进而提出了比较好的故障解决策略和方案。
用户模块:
(1)登录注册:实现可以在本系统进行实名注册并且能直接登录。
(2)任务管理:任务浏览、任务维护工作。
(3)消息模块:查看维修通知和系统消息。
(4)系统维护:重置登录密码、个人基本信息维护。
(5)常用工具:万年历、备忘录、ip查询等功能。
管理员模块:
(1)任务模块:接收任务、任务维护、上交任务、任务浏览。
(2)消息管理:系统通知消息的增加、删除、修改、查看。
(3)系统管理:管理员可以用户信息进行查看、删除、添加、信息导出等,可以对自己的个人信息修改。
(4)常用工具:火车时刻、备忘录、手机号归属地查询等功能。
(5)关于本系统:关于系统的介绍和负责的内容介绍。
系统功能模块框架图
部分效果图
数据库设计
系统中用到了5张表,针对每个表都进行了设计,下面对部分核心表进行汇总罗列展示。
(1)用户信息表
(2)报修任务信息表
(3)留言信息表
部分代码
public class LoginServlet extends HttpServlet{
private static final long serialVersionUID = 1L;
UserDao userDao=new UserDao();
DbUtil dbUtil=new DbUtil();
@Override
protected void doGet(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
this.doPost(request, response);
}
@Override
protected void doPost(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
// “管理员字符串作为权限判断,判断前台传来的权限是否和他相同
String currentLevel="管理员";
/*从前台获取用户名,密码,权限*/
String userName=request.getParameter("userName");
String password=request.getParameter("password");
String level=request.getParameter("level");
//request.setAttribute("userName", userName);
//request.setAttribute("password", password);
request.setCharacterEncoding("UTF-8");
/*判断用户名和密码是否为空*/
if(StringUtil.isEmpty(userName)||StringUtil.isEmpty(password)){
request.setAttribute("error", "用户名或密码不能为空");
request.getRequestDispatcher("login.jsp").forward(request, response);
return;
}
//将用户名,密码,权限参数传过�?
User user=new User(userName,password,level);
Connection con=null;
try {
con=dbUtil.getCon();
User currentUser=userDao.login(con,user);
//userDao.login(con,user)返回的User对象为null,则说明在数据库里面没有这条记录
if(currentUser == null){
request.setAttribute("error", "用户名或密码错误,或者权限不匹配");
//服务器跳转,登录失失败
request.getRequestDispatcher("login.jsp").forward(request, response);
}
else{
//服务器重定向,登录成功
HttpSession session = request.getSession();
session.setAttribute("currentUser",currentUser);
//将登录的用户名缓存到myName�?
session.setAttribute("myName", currentUser.getUserName());
//判断权限,如果是管理员,则跳到index.jsp
if(currentUser.getLevel().equals("管理员")){
response.sendRedirect("index.jsp");
}
//如果是别的(职员),则跳到index1.jsp
else if(currentUser.getLevel().equals("职员")){
response.sendRedirect("index1.jsp");
}else{
//此时进入用户界面
response.sendRedirect("index2.jsp");
}
}
} catch (Exception e) {
e.printStackTrace();
} finally{
try {
dbUtil.closeCon(con);
} catch (Exception e) {
e.printStackTrace();
}
}
}
}
安装部署需求
eclipse运行启动
系统部署
系统开发后,在生产环境配置项目运行环境,具体步骤如下:
安装linux或者windows10操作系统;
安装JDK1.8并配置环境变量;
安装MySQL5.7版本以上版本数据库,创建数据库并执行脚本创建表;
在eclipse中运行打包;
本项目用到的技术和框架
1.开发语言:Java
2.开发模式:B/S
3.数据库:MySQL5.7
4.框架:jsp+servlet+jdbc
本项目中的关键点
此系统的开发采用java语言开发,基于B/S结构,这些开发环境使系统更加完善。使用到的工具和技术都是开源免费的。
环境工具
开发工具 Eclipse
语言 JDK1.8 、jsp、servlet、jdbc
硬件:笔记本电脑;
软件:Tomcat8.0 Web服务器、Navicat数据库客户端、MySQL;
操作系统:Windows 10;
其它软件:截图工具、常用浏览器;
以上是本系统的部分功能展示,如果你的选题正好相符,那么可以做毕业设计或课程设计使用。