作者主页:编程指南针

简介:Java领域优质创作者、CSDN博客专家  Java项目、简历模板、学习资料、面试题库、技术互助

文末获取源码

项目编号:BS-PT-014

开发技术: jsp/servlet   前端技术:jquery+layui
开发工具:IDEA/Eclipse
数据库:MYSQL5

功能介绍:

在线调查问卷系统:实现了调查问卷管理,调查项管理,问卷审核管理,问卷统计管理,用户管理,友情链接管理等功能。问卷支持单选,多选,问答多种调查题型。支持公开问卷和私有问卷等类型。功能完整,运行无误。

部分功能截图:

首页:

调查问卷填写:

问卷列表展示:

后台管理界面:

网站系统配置:

问卷管理:

友情连接管理:

问卷添加:

问卷审核:问卷添加后,审核通过才能使用

问卷统计:统计每个调查问卷的情况

用户管理:

友情连接管理:

以上就是网络在线调查问卷系统的基本功能,可以根据需求进行调整。基于JSP实现的在线调查问卷系统。

package com.ec.survey.ctrl;import java.io.IOException;
import java.io.PrintWriter;
import java.net.URLEncoder;import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;import com.ec.survey.dao.AdminDAO;
import com.ec.survey.dao.DAOFactory;
import com.ec.survey.dao.QuestionDAO;
import com.ec.survey.dao.SurveyDAO;
import com.ec.survey.dto.Admin;public class AdminManage extends HttpServlet {/*** The doGet method of the servlet. <br>** This method is called when a form has its tag value method equals to get.* * @param request the request send by the client to the server* @param response the response send by the server to the client* @throws ServletException if an error occurred* @throws IOException if an error occurred*/public void doGet(HttpServletRequest request, HttpServletResponse response)throws ServletException, IOException {doPost(request, response);}/*** The doPost method of the servlet. <br>** This method is called when a form has its tag value method equals to post.* * @param request the request send by the client to the server* @param response the response send by the server to the client* @throws ServletException if an error occurred* @throws IOException if an error occurred*/public void doPost(HttpServletRequest request, HttpServletResponse response)throws ServletException, IOException {String mutex1="";//String mutex2="";String op=request.getParameter("op");if("AddAdmin".equals(op)){String username=request.getParameter("username");String pwd=request.getParameter("pwd");AdminDAO dao=DAOFactory.getAdminDAO();Admin admin=new Admin();admin.setA_user(username);admin.setA_pass(pwd);boolean ret1=dao.addAdmin(admin);if(ret1)response.sendRedirect("../admin/AdminList.jsp");elseresponse.sendRedirect("../admin/OpResult.jsp?op=default&ret=false&words="+URLEncoder.encode("增加管理员出错!请联系管理员", "UTF-8") );}else if("DelAdmin".equals(op)){Long aid=Long.valueOf(request.getParameter("aid"));AdminDAO dao=DAOFactory.getAdminDAO();boolean ret1=dao.delAdmin(aid);if(ret1)response.sendRedirect("../admin/AdminList.jsp");elseresponse.sendRedirect("../admin/OpResult.jsp?op=default&ret=false&words="+URLEncoder.encode("删除管理员出错!请联系管理员", "UTF-8"));}else if("EditAdmin".equals(op)){Long aid=Long.valueOf(request.getParameter("aid"));String oldpwd=request.getParameter("oldpwd");String pwd=request.getParameter("pwd");String username=request.getParameter("username");AdminDAO dao=DAOFactory.getAdminDAO();if(dao.checkPwd(username, oldpwd)!=true){response.sendRedirect("../admin/OpResult.jsp?op=default&ret=false&words="+URLEncoder.encode("旧密码错误", "UTF-8"));return;}synchronized(mutex1){Admin admin=dao.findAdmin(aid);admin.setA_user(username);admin.setA_pass(pwd);boolean ret1=dao.updateAdmin(admin);if(ret1)response.sendRedirect("../admin/AdminList.jsp");elseresponse.sendRedirect("../admin/OpResult.jsp?op=default&ret=false&words="+URLEncoder.encode("编辑管理员出错!请联系管理员", "UTF-8"));}}}}
package com.ec.survey.ctrl;import java.io.IOException;
import java.io.PrintWriter;import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;import com.ec.survey.dao.ConfigDAO;
import com.ec.survey.dao.DAOFactory;
import com.ec.survey.dto.Config;public class ConfigManage extends HttpServlet {/*** Constructor of the object.*/public ConfigManage() {super();}/*** Destruction of the servlet. <br>*/public void destroy() {super.destroy(); // Just puts "destroy" string in log// Put your code here}/*** The doGet method of the servlet. <br>** This method is called when a form has its tag value method equals to get.* * @param request the request send by the client to the server* @param response the response send by the server to the client* @throws ServletException if an error occurred* @throws IOException if an error occurred*/public void doGet(HttpServletRequest request, HttpServletResponse response)throws ServletException, IOException {doPost(request,response);}/*** The doPost method of the servlet. <br>** This method is called when a form has its tag value method equals to post.* * @param request the request send by the client to the server* @param response the response send by the server to the client* @throws ServletException if an error occurred* @throws IOException if an error occurred*/public void doPost(HttpServletRequest request, HttpServletResponse response)throws ServletException, IOException {ConfigDAO configdao=DAOFactory.getConfigDAO();Config config=new Config();config.setCSiteName(request.getParameter("siteName"));config.setCSiteUrl(request.getParameter("siteURL"));config.setCIsOpen(Boolean.valueOf(request.getParameter("siteOpen")));config.setCCloseWord(request.getParameter("closeWord"));config.setCopyright(request.getParameter("copyright"));boolean ret=configdao.updateConfig(config);if (ret==true)response.sendRedirect("../admin/OpResult.jsp?op=SysConfig&ret=true");elseresponse.sendRedirect("../admin/OpResult.jsp?op=SysConfig&ret=false");}/*** Initialization of the servlet. <br>** @throws ServletException if an error occurs*/public void init() throws ServletException {// Put your code here}}
package com.ec.survey.ctrl;import java.io.IOException;
import java.io.PrintWriter;
import java.util.ArrayList;
import java.util.Enumeration;
import java.util.List;import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;import com.ec.survey.dao.DAOFactory;
import com.ec.survey.dao.QuestionDAO;
import com.ec.survey.dto.Question;public class QuestionManage extends HttpServlet {/*** The doGet method of the servlet. <br>** This method is called when a form has its tag value method equals to get.* * @param request the request send by the client to the server* @param response the response send by the server to the client* @throws ServletException if an error occurred* @throws IOException if an error occurred*/public void doGet(HttpServletRequest request, HttpServletResponse response)throws ServletException, IOException {doPost(request,response);}/*** The doPost method of the servlet. <br>** This method is called when a form has its tag value method equals to post.* * @param request the request send by the client to the server* @param response the response send by the server to the client* @throws ServletException if an error occurred* @throws IOException if an error occurred*/public void doPost(HttpServletRequest request, HttpServletResponse response)throws ServletException, IOException {String mutex = ""; String mutex1 = ""; String mutex2 = ""; String op=request.getParameter("op");if("AddQuestion".equals(op)){String sid=request.getParameter("sid");String type=request.getParameter("type");String qhead=request.getParameter("qHead");String qbody=request.getParameter("qBody"); String qresult=request.getParameter("qResult");String qimg=request.getParameter("qImg");Question question=new Question();question.setSurvey(Long.valueOf(sid));question.setQType(Long.valueOf(type));question.setQHead(qhead);question.setQBody(qbody);question.setQResult(qresult);question.setQImg(qimg);question.setQOrder(0L);String [] qbodys=qbody.split("&\\$\\$&");String spliter="";for(int i=1;i<qbodys.length;i++)if(i==qbodys.length-1)spliter=spliter+"null&null";elsespliter=spliter+"null&";question.setQJdtz(spliter);QuestionDAO dao=DAOFactory.getQuestionDAO();boolean ret=dao.addQuestion(question);if(ret==true)response.sendRedirect("../admin/OpResult.jsp?op=Question&ret=true&sid="+sid);else{response.sendRedirect("../admin/OpResult.jsp?op=Question&ret=false");}}else if("DelQuestion".equals(op)){String sid=request.getParameter("sid");String qid=request.getParameter("qid");QuestionDAO dao=DAOFactory.getQuestionDAO();boolean ret=dao.delQuestion(Long.valueOf(qid));if(ret==true)response.sendRedirect("../admin/QuestionAdmin.jsp?sid="+sid);elseresponse.sendRedirect("../admin/OpResult.jsp?op=Question&ret=false");}else if("EditQuestion".equals(op)){String sid=request.getParameter("sid");String qid=request.getParameter("qid");//System.out.println(qid);String type=request.getParameter("type");String qhead=request.getParameter("qHead");String qbody=request.getParameter("qBody"); String qimg=request.getParameter("qImg");QuestionDAO dao=DAOFactory.getQuestionDAO();synchronized(mutex){Question question=dao.findQuestion(Long.valueOf(qid));//System.out.println(question==null);question.setQType(Long.valueOf(type));question.setQHead(qhead);question.setQBody(qbody);question.setQImg(qimg);String [] qbodys=qbody.split("&\\$\\$&");String spliter="";for(int i=1;i<qbodys.length;i++)if(i==qbodys.length-1)spliter=spliter+"null&null";elsespliter=spliter+"null&";question.setQJdtz(spliter);question.setQOrder(0L);boolean ret=dao.updateQuestion(question);if(ret==true)response.sendRedirect("../admin/OpResult.jsp?op=Question&ret=true&sid="+sid);elseresponse.sendRedirect("../admin/OpResult.jsp?op=Question&ret=false");}}else if("setJD".equals(op)){String sid=request.getParameter("sid");String qid=request.getParameter("qid");int jd_count=Integer.parseInt(request.getParameter("jd_count"));List<String> list=new ArrayList<String>();for(int j=0;j<jd_count;j++){String checked=request.getParameter("check_jd"+j);list.add(checked);}QuestionDAO dao=DAOFactory.getQuestionDAO();synchronized(mutex1){Question question=dao.findQuestion(Long.valueOf(qid));String [] jdtz=question.getQJdtz().split("&");for(int j=0;j<jdtz.length;j++){if("on".equals(list.get(j)))jdtz[j]="over";}String newJdtz="";for(int j=0;j<jdtz.length;j++){if(j==jdtz.length-1)newJdtz=newJdtz+jdtz[j];elsenewJdtz=newJdtz+jdtz[j]+"&";}question.setQJdtz(newJdtz);boolean ret=dao.updateQuestion(question);if(ret==true)response.sendRedirect("../admin/OpResult.jsp?op=Question&ret=true&sid="+sid);elseresponse.sendRedirect("../admin/OpResult.jsp?op=Question&ret=false");}}else if("setTZ".equals(op)){String sid=request.getParameter("sid");String qid=request.getParameter("qid");int jd_count=Integer.parseInt(request.getParameter("tz_count"));List<String> list=new ArrayList<String>();for(int j=0;j<jd_count;j++){String checked=request.getParameter("check_tz"+j);list.add(checked);}QuestionDAO dao=DAOFactory.getQuestionDAO();synchronized(mutex2){Question question=dao.findQuestion(Long.valueOf(qid));//set value of jdtz for every choiceString [] jdtz=question.getQJdtz().split("&");for(int j=0;j<jdtz.length;j++){//System.out.println(list.get(j));if("on".equals(list.get(j))||list.get(j)==null){jdtz[j]="null";}elsejdtz[j]=list.get(j);}//start concat the jdtz field with &.String newJdtz="";for(int j=0;j<jdtz.length;j++){if(j==jdtz.length-1)newJdtz=newJdtz+jdtz[j];elsenewJdtz=newJdtz+jdtz[j]+"&";}question.setQJdtz(newJdtz);boolean ret=dao.updateQuestion(question);if(ret==true)response.sendRedirect("../admin/OpResult.jsp?op=Question&ret=true&sid="+sid);elseresponse.sendRedirect("../admin/OpResult.jsp?op=Question&ret=false");}}}}
package com.ec.survey.ctrl;import java.io.IOException;
import java.io.PrintWriter;
import java.net.URLEncoder;
import java.text.ParseException;
import java.text.SimpleDateFormat;
import java.util.Date;import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;import com.ec.survey.dao.AnswersheetDAO;
import com.ec.survey.dao.DAOFactory;
import com.ec.survey.dao.QuestionDAO;
import com.ec.survey.dao.SurveyDAO;
import com.ec.survey.dao.TextDAO;
import com.ec.survey.dto.Survey;public class SurveyManage extends HttpServlet {/*** */private static final long serialVersionUID = -1737458302140188798L;/*** Constructor of the object.*/public SurveyManage() {super();}/*** Destruction of the servlet. <br>*/public void destroy() {super.destroy(); // Just puts "destroy" string in log// Put your code here}/*** The doGet method of the servlet. <br>** This method is called when a form has its tag value method equals to get.* * @param request the request send by the client to the server* @param response the response send by the server to the client* @throws ServletException if an error occurred* @throws IOException if an error occurred*/public void doGet(HttpServletRequest request, HttpServletResponse response)throws ServletException, IOException {PrintWriter out=response.getWriter();String mutex1="";String mutex2="";if("AddSurvey".equals(request.getParameter("op"))){SurveyDAO surveydao=DAOFactory.getSurveyDAO(); Survey survey=new Survey();survey.setSName(request.getParameter("Survey_name"));survey.setSAuthor(request.getParameter("Survey_author"));survey.setSDesc(request.getParameter("Survey_description"));survey.setSCreateDate(new Date());SimpleDateFormat sdf=new SimpleDateFormat("yyyy-MM-dd");try {survey.setSExpireDate(sdf.parse(request.getParameter("Survey_ExpireDate")));} catch (ParseException e) {out.println("wrong DATE format.please check it!");}survey.setTemplet(0L);survey.setSIpRepeat(Boolean.valueOf(request.getParameter("Survey_ipRepeat")));survey.setSIsOpen(Boolean.valueOf(request.getParameter("Survey_isOpen")));if(request.getParameter("Survey_isImg")!=null)survey.setSImg(request.getParameter("imgfilepath"));if(request.getParameter("Survey_isPassword")!=null)survey.setSPassword(request.getParameter("Survey_Password1"));if(request.getParameter("Survry_IPLimit")!=null){//survey.setSIpLimitType(request.getParameter("Survey_ipLimitKinds"));survey.setSIpRange(request.getParameter("Survey_ipRange"));}survey.setSHits(0L);survey.setSIsAudited(false);survey.setSUsehits(0L);boolean ret=surveydao.addSurvey(survey);//System.out.println(ret);if(ret==true)response.sendRedirect("../admin/OpResult.jsp?op=SurveyAdd&ret=true");elseresponse.sendRedirect("../admin/OpResult.jsp?op=SurveyAdd&ret=false");}else if("SurveyAudi".equals(request.getParameter("op"))){Boolean audit=Boolean.valueOf(request.getParameter("audit"));SurveyDAO surveydao=DAOFactory.getSurveyDAO();synchronized(mutex1){Survey  survey=surveydao.findSurvey(Long.valueOf(request.getParameter("sid")));if(audit==true)survey.setSIsAudited(true);elsesurvey.setSIsAudited(false);boolean ret=surveydao.updateSurvey(survey);if(ret==true)response.sendRedirect("../admin/SurveyAudi.jsp");elseresponse.sendRedirect("../admin/OpResult.jsp?op=SurveyAudi&ret=false");}}else if("EditSurvey".equals(request.getParameter("op"))){SurveyDAO surveydao=DAOFactory.getSurveyDAO(); String sid=request.getParameter("Survey_id");synchronized(mutex2){Survey survey=surveydao.findSurvey(Long.valueOf(request.getParameter("Survey_id")));survey.setSName(request.getParameter("Survey_name"));survey.setSAuthor(request.getParameter("Survey_author"));survey.setSDesc(request.getParameter("Survey_description"));SimpleDateFormat sdf=new SimpleDateFormat("yyyy-MM-dd");try {survey.setSExpireDate(sdf.parse(request.getParameter("Survey_ExpireDate")));} catch (ParseException e) {out.println("wrong DATE format.please check it!");}survey.setTemplet(0L);//?????幦??survey.setSIpRepeat(Boolean.valueOf(request.getParameter("Survey_ipRepeat")));survey.setSIsOpen(Boolean.valueOf(request.getParameter("Survey_isOpen")));if(request.getParameter("Survey_isImg")!=null){if(request.getParameter("imgfilepath")!=null)survey.setSImg(request.getParameter("imgfilepath"));}elsesurvey.setSImg(null);//System.out.println(request.getParameter("Survey_isPassword"));if(request.getParameter("Survey_isPassword")!=null){survey.setSPassword(request.getParameter("Survey_isPassword"));}elsesurvey.setSPassword(null);if(request.getParameter("Survry_IPLimit")!=null){//survey.setSIpLimitType(request.getParameter("Survey_ipLimitKinds"));survey.setSIpRange(request.getParameter("Survey_ipRange"));//System.out.print(request.getParameter("Survey_ipRange"));}else{survey.setSIpLimitType(null);survey.setSIpRange(null);}boolean ret=surveydao.updateSurvey(survey);//System.out.println(ret);if(ret==true)response.sendRedirect("../admin/SurveyEdit.jsp?sid="+sid+"&words="+URLEncoder.encode("操作成功!", "UTF-8"));elseresponse.sendRedirect("../admin/OpResult.jsp?op=SurveyEdit&ret=false");}}else if("DelSurvey".equals(request.getParameter("op"))){Long surveyId=Long.valueOf(request.getParameter("sid"));SurveyDAO surveydao=DAOFactory.getSurveyDAO(); boolean ret1=surveydao.delSurvey(surveyId);QuestionDAO questiondao=DAOFactory.getQuestionDAO();if(ret1==true)ret1=questiondao.delQuestions(surveyId);if(ret1==true){TextDAO tdao=DAOFactory.getTextDAO();ret1=tdao.delText(surveyId);}if(ret1==true){AnswersheetDAO adao=DAOFactory.getAnswersheetDAO();ret1=adao.delAnswersheets(surveyId);}if(ret1==true)response.sendRedirect("../admin/SurveyAdmin.jsp");elseresponse.sendRedirect("../admin/OpResult.jsp?op=SurveyDel&ret=false");}}/*** The doPost method of the servlet. <br>** This method is called when a form has its tag value method equals to post.* * @param request the request send by the client to the server* @param response the response send by the server to the client* @throws ServletException if an error occurred* @throws IOException if an error occurred*/public void doPost(HttpServletRequest request, HttpServletResponse response)throws ServletException, IOException {doGet(request,response);}/*** Initialization of the servlet. <br>** @throws ServletException if an error occurs*/public void init() throws ServletException {// Put your code here}}

使用Javaweb实现在线调查问卷系统相关推荐

  1. JSP实现在线调查问卷系统

    项目编号:BS-PT-014 开发技术: jsp/servlet   前端技术:jquery+layui 开发工具:IDEA/Eclipse 数据库:MYSQL5 功能介绍: 在线调查问卷系统:实现了 ...

  2. 基于JSP的在线调查问卷系统

    <基于JSP的在线调查问卷系统>该项目采用技术:jsp +servlet +mysql+jdbc+css+js等相关技术,项目含有源码.课设报告.配套开发软件.软件安装教程.项目发布教程等 ...

  3. 计算机毕业设计、实战项目之 [课设文档]基于JSP的在线调查问卷系统[包运行成功]

    <基于JSP的在线调查问卷系统>该项目采用技术:jsp +servlet +mysql+jdbc+css+js等相关技术,项目含有源码.课设报告.配套开发软件.软件安装教程.项目发布教程等 ...

  4. jsp mysql问卷调查_课内资源 - 基于JSP的在线调查问卷系统

    一.系统架构图 用户登入功能,由login.jsp页面和LoginServlet.java组成,页面用于填写用户名和密码:Servlet用于验证是否可以登入,如果能够登入,则将用户登入时间记录到数据库 ...

  5. 在线调查问卷系统投票(含源码+论文+答辩PPT等)

    项目功能简介: 该项目采用技术:JSP +Servlet +MySQL+jdbc+css+js等相关技术,项目含有源码.课设报告.配套开发软件.软件安装教程.项目发布教程等 一.系统架构图 用户登入功 ...

  6. java毕业设计网站基于JSP的在线调查问卷系统|投票[包运行成功]

  7. jsp+servlet搭建在线投票问卷系统

    jsp+servlet搭建在线投票问卷系统 点赞再看,养成习惯 程序帮QQ:1022287044 开发环境准备 jdk1.8 tomcat8 mysql5.7 intellij IDEA 系统采用技术 ...

  8. 【附源码】Python计算机毕业设计网络调查问卷系统

    项目运行 环境配置: Pychram社区版+ python3.7.7 + Mysql5.7 + HBuilderX+list pip+Navicat11+Django+nodejs. 项目技术: dj ...

  9. 云服务器搭建调查问卷系统,云服务器搭建调查问卷系统

    云服务器搭建调查问卷系统 内容精选 换一换 本方式建议用于非生产系统.本方式通过使用云硬盘备份服务或云服务器备份服务,对SAP HANA的一个或多个卷执行快照,再将卷快照创建成备份,自动上传到华为云O ...

最新文章

  1. 疯狂Spring Cloud连载(5)Eureka集群搭建
  2. c++自底向上算符优先分析_词法分析程序的自动生成器(二)——Thompson算法
  3. java web面试题大全_Java经典面试题之Java web开发汇总(附答案)
  4. altium designer 不自动清除回路 清除功能打开失效
  5. linux挂载一个文件夹,linux挂载一个文件夹到另一个文件夹
  6. boost::recursive_mutex相关的测试程序
  7. n阶换方c语言程序,求单偶阶与双偶阶幻方编程思想及其算法!
  8. lombok链式调用_使用Lombok翻车了
  9. 前端学习(1544):MVC的组成部分2
  10. Qt笔记-Q_UNUSED解决编译器unused paramenter告警
  11. 【python】人机大战
  12. 计算机网络零碎笔记:IP协议(一)
  13. Activiti 5.16 用户手册
  14. 【递归调用在二叉树中的应用】前序遍历、中序遍历、后序遍历、求二叉树叶子结点及复制二叉树的C语言实现
  15. 【Python爬虫系列】Python 爬取上海链家二手房数据
  16. Learning the Model Update for Siamese Trackers论文笔记
  17. AAAI2021联邦学习论文集
  18. 经典计算机书籍【转贴
  19. deform服务器位置,Deform V11 自动多工步分析(MO)设置详解-工艺成型及仿真
  20. 计算机编程飞船,当光速飞船遇上“神奇魔法”……

热门文章

  1. 对话通信原理系列专题目录
  2. Linux下Nagios的安装与配置
  3. Java从小白到入门,Day7,JAVAOO-继承
  4. 解决java.lang.UnsupportedClassVersionError
  5. Django学习笔记 开发环境搭建
  6. json 是个什么东西?
  7. 选择创业型还是成熟型公司?
  8. Exchange 2007更改用户收发邮件大小限制
  9. linux ping策略打开_Linux禁止ping以及开启ping的方法
  10. 随便创作的文件加密算法不知谁人能破解