基于JSP的在线调查问卷系统
一、系统架构图
用户登入功能 ,由login.jsp页面和LoginServlet.java组成,页面用于填写用户名和密码;Servlet用于验证是否可以登入,如果能够登入,则将用户登入时间记录到数据库表中,并转向main.jsp;不能登入给出提示,并转向login.jsp。
用户注册功能 ,由register.jsp页面和RegsiterServlet.java组成。页面用于设计输入表单;Servlet用来将数据插入数据库表中,需要调用JavaBean。
main.jsp 中显示所有调查问卷的信息(来自LogInfo表)和一个用户注销按钮。如果身份是问卷调查人,能够通过发布问卷按钮发布问卷。如果是管理员则有一个用户管理按钮,可以管理用户。点击用户注销按钮时,将退出时间存入数据库表中,并转向 login.jsp;如果session超时或用户直接关闭浏览器也要将退出时间存入数据库表,使用session监听器实现这个功能。
管理员点击首页的用户管理按钮后 ,进入userManagement.jsp,页面中显示所有用户的登入或退出系统的信息(来自LogInfo表)和一个返回首页按钮。还显示用户信息的列表,能够通过删除用户按钮通过AdminServlet.java删除指定用户,通过升级为问卷调查人问卷将普通用户的权限提高为2,使得用户能够出问卷。点击添加用户按键,跳转到adduser.jsp界面,能够添加用户,成功后返回用户管理页面。
问卷调查人和管理员点击首页的发布问卷按键后 ,进入问卷发布页AddPaper.java,添加问卷后经过QuestionServlet.java处理后跳转到addChoiceQuestion.jsp,通过标签 单选题addChoiceQuestion.jsp、问答题addAnswerQuestion.jsp、多选题addMultiChoiceQt.jsp能够出问卷,出一题后会跳转到addQuestionSuccess.jsp提示继续出题或预览问卷preScanSurvey.jsp,预览问卷时能发布问卷和继续出题。
首页点击查看问卷按钮后 ,通过ShowResult.java能查看问卷调查的统计结果信息showresult.jsp。
当用户没有登录 并在浏览器中直接访问main.jsp页面,则要求其登录。
所有用户都能够参与问卷调查 ,在首页点击相应的问卷名字后打开surveypage.jsp,填写完整后提交问卷SurveySubmit.java把数据插入到数据库中保存。
系统用例图 如下所示:
总体架构图 如下所示:
二、系统主要文件的名称和功能简介
系统中所有的JSP、Servlet、JavaBean、Listener、Filter的名称和功能简介。
├─com
│ │ LoginInfo.java 用户登录退出信息
│ │ Paper.java 问卷信息
│ │ Question.java 问卷问题信息
│ │ UserInfo.java 用户基本信息
│ │
│ ├─dao
│ │ │ PaperDao.java 问卷数据访问对象接口
│ │ │ QuestionDao.jav 问题数据访问对象接口
│ │ │
│ │ └─mysqlimpl
│ │ BaseDao.java mysql基本数据访问对象
│ │ PaperDaoImpl.java 问卷数据访问对象实现
│ │ QuestionDaoImpl.java 问题数据访问对象实现
│ │
│ └─service
│ │ PaperService.java 问卷类服务接口
│ │ QuestionService.java 问题类服务接口
│ │
│ └─impl
│ PaperServiceImpl.java 问卷类服务实现
│ QuestionServiceImpl.java 问题类服务实现
│
├─db
│ DB.java 数据库连接
│
├─filter
│ LoginFilter.java 当用户没有登录并在浏览器中直接访问main.jsp页面,则要求其登录
│
├─listener
│ LogoutListener.java 监听用户注销 注销时间记录在数据库中
│
└─servlet
AddPaper.java 添加问卷信息Servlet
AdminServlet.java 管理员管理用户信息Servlet
LoginServlet.java 用户登录Servlet
QuestionServlet.java 添加问题Servlet
RegisterServlet.java 用户注册Servlet
ShowResult.java 显示问卷统计信息Servlet
SurveyPage.java 访问指定编号问卷Servlet
SurveySubmit.java 提交问卷调查信息Servlet
jsp页面
│ addAnswerQuestion.jsp 添加问答题页面
│ addChoiceQuestion.jsp 添加单选题页面
│ addMultiChoiceQt.jsp 添加多选题页面
│ addpaper.jsp 添加问卷页面
│ addQuestionSuccess.jsp 添加问题成功后的提示页面
│ adduser.jsp 添加用户页面
│ login.jsp 用户登录页面
│ main.jsp 系统主界面
│ MysqlTest.jsp mysql连接测试页面
│ preScanSurvey.jsp 预览问卷 做问卷中途查看效果页面
│ register.jsp 用户注册页面
│ showpaper.jsp 查看问卷 输入问卷编号后跳转到指定问卷页面
│ showresult.jsp 显示问卷调查结果页面
│ showResultAfterAnswer.jsp 回答问卷后显示问卷调查结果页面
│ surveypage.jsp 问卷调查主页面
│ temp.jsp 用户未登录临时跳转页面
│ userManagement.jsp 管理员用户管理页面
三、数据库表设计
Userinfo表
示例值 :
Logininfo表
示例值 :
Questions表
示例值 :
Papers表
示例值 :
四、程序运行效果
用户登录界面
用户注册
系统主界面 ,根据用户的身份不同,会有不同的欢迎提示消息,如果为管理员,还可以管理用户,右上角可以注销登录。点击问卷名可以参与问卷调查,点击查看结果可以查看问卷调查结果。最新添加的问卷排在前面。
管理员用户管理界面 ,显示用户的登录和注销时间信息。管理员能够添加删除用户,将用户升级为问卷调查人,即指定问卷调查人。
发布问卷页面
单选题、问答题、多选题各种题型添加
填写问卷示例
以图表的形式显示问卷调查结果
五、实验总结
通过本次试验,我对用JSP编写网站的过程熟悉了很多。对JSP、Servlet、JavaBean、Listener、Filter有了更加深的了解。
本次试验是在上一个JDBC的实验基础上继续做的,又因为通过实习前两周培训,上了软件体系结构这门课,把DAO(Data Access Object)的编程思想马上运用到实验中来,学以致用。DAO模式是标准的J2EE设计模式之一,开发人员使用这个模式把底层的数据访问操作和上层的商务逻辑分开。在本次试验过程中,同样不可避免的遇到了很多的问题,有时候文件改太多不知道错了哪里很不好解决,还好我有通过svn来进行代码版本管理,存在问题的文件返回到正常的版本。编程过程中遇到的问题,通过和同学讨论,基本能解决问题。数据库的设计是参考大型问卷管理系统的,具体有些字段还没有实现,不过对于系统的扩充有很重要的意义。
参考文献
- 网络流量统计分析系统(吉林大学·石景龙)
- 中国石油哈尔滨石化公司在线考试系统的开发与设计(吉林大学·徐景洪)
- 思科亿网网上交易实现与安全研究(吉林大学·周威)
- 基于JSP平台的汽车网站的研究与开发(中国海洋大学·盛锦玉)
- 基于B/S模式和JSP技术的教师办公管理系统的设计与实现(华东师范大学·包子建)
- 在线考试系统的设计与实现(吉林大学·朱雅迪)
- 基于JSP动态Web技术的在线考试系统(电子科技大学·黄东)
- 河北网通用户回访定制系统的设计与实现(北京邮电大学·芦宏志)
- JSP技术在EAP服务系统中的应用(吉林大学·何鑫)
- 河北网通用户回访定制系统的设计与实现(北京邮电大学·芦宏志)
- 基于ASP.NET的网络问卷调查系统的设计与实现(武汉理工大学·李珊)
- 基于WEB的网络教学系统的设计与实现(东北大学·周海斌)
- 基于JSP平台的汽车网站的研究与开发(中国海洋大学·盛锦玉)
- 基于云计算模式的社会服务管理信息化平台项目设计与建设(吉林大学·杨刚)
- 基于J2EE的远程网络教育系统研究与实现(电子科技大学·陈南荪)
本文内容包括但不限于文字、数据、图表及超链接等)均来源于该信息及资料的相关主题。发布者:毕设海岸 ,原文地址:https://bishedaima.com/yuanma/35184.html