网上投票系统论文_第1页
网上投票系统论文_第2页
网上投票系统论文_第3页
网上投票系统论文_第4页
网上投票系统论文_第5页
已阅读5页,还剩39页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

摘要从国际互联网到校园网,企业局域网,各种网上投票系统随处可见,意见调查,用户信息统计,经营情况调查都可以作为投票的内容。网上投票系统凭借其方便快捷等特点,已经成为统计收集信息不可或缺的工具。随着网络技术的发展,网上投票系统的作用将会越来越大。本设计为基于JSP的网上投票系统,该系统既可以实现普通用户在线投票、查看投票结果、查看热门投票等功能,也可以实现管理员对投票主题的添加、删除、修改,对投票结果的查看,对用户的信息维护等功能。本设计基于JSP开发语言,采用JDK+Tomcat作为服务器运行环境,用Dreamweaver进行页面设计,文中使用了JSP的开发环境MyEclips8.5,存储数据使用MySQL数据库。关键词:网上投票系统;JSP;MySQL数据库内蒙古工业大学本科毕业设计说明书内蒙古工业大学本科毕业设计说明书内蒙古工业大学本科毕业设计说明书内蒙古工业大学本科毕业设计说明书AbstractFromthecampusnetworktotheInternet,andcorporateLAN,avarietyofonlinevotingsystemscanbeseeneverywhere,andsurveys,userinformationstatisticsandbusinesssurveyscanbeusedasthecontentofonlinevotingsystem.Becauseofitsconvenientfeatures,thesystemhasbecomeanintegralpartofcollectinginformatinon,andwiththedevelopmentofnetworktechnology,theroleoftheInternetvotingsystemwillbeincreasing.ThedesignisanonlinevotingsystembasedonJSP,bywhichordinaryuserscanonlyvoteonline,viewthevotingresults,seepopularvoteandotherfunctions,theycanfulfillthethemeofthevoteadministratortoadd,delete,modify,andviewvotingresultsontheuser'sinformationmaintenance.ThedesignisbasedonJSP,usingJDK+Tomcatasaserveroperatingenvironment.ThepagedesignusesDreamweaver,thesystemmakesuseoftheJSPdevelopmentandruntimeenvironment,andMySQLdatabaseusedtostoredata.Keywords:OnlineVotingSystem;JSP;MySQLDataBase目录TOC\o"1-5"\h\z引言1第一章JSP基础及开发环境和工具介绍2JSP基础2B/S结构的数据库访问模式2MyEclipse简介3MySQL简介3对软件和硬件的要求4JDK与Tomcat环境变量设置5第二章网上投票系统的需求分析6需求分析6系统用例图6第三章网上投票系统的总体设计9系统模块总体设计9系统功能模块分析10用户投票子系统10投票后台管理子系统10数据库设计11数据库的需求分析11概念结构设计12逻辑结构设计13第四章网上投票系统的详细设计与实现15系统运行平台设置15系统登录界面设计与实现15登录的界面及实现15用户注册的界面及实现17用户网上投票模块设计与实现18投票分类模块18热门投票模块21投票结果查询模块234.4后台投票管理模块设计与实现26用户信息模块26投票主题管理模块28投票结果查询模块32结论34参考文献35谢辞36内蒙古工业大学本科毕业设计说明书内蒙古工业大学本科毕业设计说明书内蒙古工业大学本科毕业设计说明书内蒙古工业大学本科毕业设计说明书#SupJ魁1弐i:二悬+兰【MM图4-9用户投票界面SupJ魁1弐i:二悬+兰【MM图4-9用户投票界面断»!UP投黯果S&2阻辭加i和▼1DS5热劇籀卜]图4-10投票结果显示界面2、实现过程热门投票分类的下拉菜单显示热度排行榜,是一个超链接,点击后进入投热门投票排行显示页面。排行榜显示页面是一个JSP页面,它是一个HTML嵌套Java代码的页面。用SQL语句"select*fromvotewhereflag=0";从数据库中输出所有的主题的整条记录存入结果集中,通过循环将结果集中每个主题的获得的投票总数求出。然后取出结果集的ID号,通过SQL语句"updatevotesettotal="+total+"whereid="+idl;将投票总数插入该ID号的投票总数变量中。用SQL语句"select*fromvotewhereflag=0orderbytotaldesc",将所有主题按投票总数从大到小排序,并将排序后的主题存入结果集中。通过循环从结果集中取出主题名称及其投票总数赋给相应的变量,通过表格的形式嵌入变量输出参与人数、主题,并在每个主题后输出一个进入投票的按钮,在按钮下面有一个隐藏域,将ID号赋值给该隐藏域的VALUE值。点击进入投票后,跳转到用户投票页面,该投票页面也是个JSP页面。通过aa=request.getParameter("id")获得前面隐藏域中的ID号。用SQL语句"select*fromvotewhereid="+aa;将该ID号的主题及其选项存入结果集。通过循环将该主题及其选项输出,最后输出提交按钮在按钮下面有一个隐藏域,将ID号赋值给该隐藏域的VALUE值。点击提交按钮后,跳转到该主题的投票结果显示页面,该投票页面也是个JSP页面。通过bb=request.getParameter("id")获得前面隐藏域中的ID号,并将用户选中的选项的number值加一存入数据库。用SQL语句"select*fromvotewhereid="+bb;将该ID号的主题及其选项以及选项的number值存入结果集。通过循环取出结果集中的number值计算出投票总数,然后用每个选项的number值除以投票总数,计算出投票百分比,将这值赋给图片的宽度,这样就可以以条形图显示每个选项的投票数了。最后通过循环将结果集中的主题及选项以及选项的条形图输出。4.3.3投票结果查询模块l、实现目标在用户投票系统的主页面中,可以单击功能导航区中的投票结果查询按钮,显示按主题查询和按分类查询的下拉菜单,点击按主题查询进入按主题名查询该主题投票结果的页面,输入要查的主题名点击查询,显示出该主题的投票结果。点击按分类查询进入按主题分类显示该分类的所有主题的投票结果的页面。该模块界面如图4-11至4-13所示。

■mas按主题查询投票结果请输間要査询舸主酩

列二亙芳訓暫i西ma色耻按蘇窮图4-11按主题查询结果界面QOQ■mas按主题查询投票结果请输間要査询舸主酩

列二亙芳訓暫i西ma色耻按蘇窮图4-11按主题查询结果界面QOQUP按縣经W,注聖邂]投黯果主迦:有軒WW?匹沪強;E?<襦软1辉需影2图4-12主题投票结果显示界面史臓嶼瞬i碌期类邀謀11搐毬独麟呆H競翻类錘謀II端耐)事探課mx:十耶士三匕:親碱:37;■:煞1/子宦:三二氏4

金桂需数1

姒座臧1图4-13按分类查询投票结果界面2、实现过程投票结果查询的下拉菜单显示按主题查询和分类查询,是两个超链接,点击按主题查询后进入按主题查询的页面。该页面是一个HTML页面,该页面有一个表单,表单中的文本域可以输入主题,点击提交按钮后进入该主题的投票结果显示页面。通过qs=request.getParameter("sql")获得文本域内的主题名。用SQL语句"select*fromvotewherequestion='"qs+"'"从数据库中输出该主题的整条记录存入结果集中。通过循环取出结果集中的number值计算出投票总数,然后用每个选项的number值除以投票总数,计算出投票百分比,将这值赋给图片的宽度,这样就可以以条形图显示每个选项的投票数了。最后通过循环将该主题及选项以及选项的条形图输出。点击按分类查询进入按分类查询的页面,该页面是一个JSP页面,它是一个HTML嵌套Java代码的页面。页面上方有个投票的分类是超链接,点击进入该分类的投票结果显示。用SQL语句"select*fromvotewhereflag=0andoptType=1orderbyiddesc"查询该分类的所有主题的记录存入结果集,然后通过循环等操作输出结果集中的每个主题及其选项和条形图。

后台投票管理模块设计与实现后台投票管理模块主要包括用户信息管理、投票管理、投票结果管理几部分。后台投票管理模块流程图如图4-14所示。管理员按分类查询用户信息管查看用户信息图4-14后台投票管理模块流程图显示该分类的所有

管理员按分类查询用户信息管查看用户信息图4-14后台投票管理模块流程图显示该分类的所有

主题投票结果4.4.1用户信息模块1、实现目标在后台投票管理系统的主页面中,可以单击功能导航区中的用户信息管理按钮点击进入用户信息页面。在每个用户信息后面都有一个删除按钮,单击删除按钮,则可删除该条信息并可以提示删除成功。该模块界面如图4-15至4-16所示。

臼:.jn123二:二辄-■r图4-15用户信息显示界面三[ji二二1237■图4-16用户信息删除成功界面2、实现目标点击用户信息维护进入用户信息显示界面。此界面是一个JSP页面,包含HTML信息和Java代码°HTML中主要有表格和表单,表格里的内容是界面的内容。用封装的JDBC类连接数据库,将SQL查询语句select*fromusers作为参数

调用类中的方法,最终实现从数据库提取所有用户的信息。获得信息后将每个属性值放入变量中,将变量放入需要显示的表格中,这样就可以实现如图的效果了。每个用户信息后的删除按钮,是用一个提交按钮和ID的隐藏域实现的。点击此删除按钮可以实现将本条记录删除的功能。处理删除动作的JSP页面,从表单中获取隐藏域的ID值,然后执行SQL语句"deletefromuserswhereid二?"从数据库中删除该条记录。删除完成后用一个Session返回用户信息显示界面一个删除成功的信息,并将现有的用户信息再次显示出来。442投票主题管理模块1、实现目标在投票后台管理系统的主页面中,可以单击功能导航区中的投票管理按钮显示出下拉菜单中增加主题、修改主题、删除主题、查看主题四个选项。单击增加主题进入添加主题及其选项的页面,完成对主题和选项的增加。单击修改主题进入修改主题及其选项的页面,完成对主题和选项的修改。单击查看主题进入主题及选项信息显示页面。单击删除主题进入按主题分类显示的主题信息,每个主题信息后有个删除安钮,单击删除按钮可将该主题及其选项从数据库中删除,并再次回到信息显示页面并输出删除记录成功。该模块界面如图4-17至4-23所示。里用FZ難^主砸若;■-里用FZ難^主砸若;■-■■■:.?::3i.图4-17增加主题界面$fit®二订弋莖上迟孑閔1护;弋弐症弐IK駁一玄兰1翩辆鹽?刊1S对眦迄1删删極丁二M疋臺图4-18删除主题界面疋锻邑Es澈3二迂ifll示加台管□'QII■J]XBU出■肾4翌■千肘辛昌IlH1S=£II严空I庁于"託委11二晟一弐图4-19主题删除成功界面»码上題笨三二IE.孑主壬II透弐II忧弐II迓注畏十苧:T'.':m二三:::::二0n■11millA.r21.|"_一三:-11■1:''心丁1:.^:二一0;■■1:''I:T■-null1:.1“--:90藉硼星是准?null01.:01111^■-■-■1:''129Q1111:;.?■:i二:宿养範洎1T*Q.1叫5t倍1耳刍0图4-22修改显示界面<瞬投票后台管耳系统增扣主题IIAB主題II査看主题II憧改主题11杏看投票结果图4-23修改成功界面2、实现过程点击投票管理中的增加主题按钮进入增加主题及选项的页面,该页面是-个JSP页面,它是一个HTML嵌套Java代码的页面。首先从文本框内输入要创建的主题名称,输入要创建的选项的数目,点击创建后显示选项的文本框,然后从中输入选项的内容最后提交。提交后通过获取表单的内容,将文本框中的值赋给变量,最后通过SQL语句"insertintovote(flag,optType,question)values(0,"+optType+",'"+question+"')"和"insertintovote(flag,optContent,number)values("+id+",'"+optContent+"',0)"将值插入数据库。点击投票管理中的删除按钮主题进入不同主题分类的显示页面。在一个分类的页面中显示该分类的所有的主题名并且在每个主题名后有一个删除按钮。这个按钮是用一个提交按钮和ID的隐藏域实现的。点击此删除按钮可以实现将本条记录删除的功能。处理删除动作的JSP页面,从表单中获取隐藏域的ID值,然后执行SQL语句"deletefromuserswhereid二?"从数据库中删除该条记录。删除完成后用一个Session在该分类主题信息显示界面输出一个删除记录成功的信息,并将现有的主题信息再次显示出来。点击投票管理中的查看主题按钮进入所有主题及选项信息显示的页面,该页面是一个JSP页面,它是一个HTML嵌套Java代码的页面。其中的HTML是一个表格,表格中有静态的文字,如序号、标识、投票主题等文字,还有从数据库中提取的内容用变量的形式放到表格的相应位置。Java代码主要实现:用封装的JDBC类连接数据库将SQL查询语句select*fromvote作为参数调用类中的方法,最终实现从数据库提取相应投票主题的信息。获得信息后将每个属性值放入变量中,将变量放入需要显示的表格中。点击投票管理中的修改主题按钮进入修改主题的页面,该页面是一个HTML页面。该页面有一个表单,表单中的文本域可以输入主题,点击提交按钮后进入该主题的主题及选项信息的显示页面。通过qs=request.getParameter("sql")获得文本域内的主题名。用SQL语句"select*fromvotewherequestion='"qs+"'"从数据库中输出该主题的整条记录存入结果集中。通过循环取出结果集中的主题名称及选项内容赋值给文本域的VALUE值,同时取出主题及选项的ID值存入隐藏域中。对文本域的主题及选项内容修改后点击更新按钮,进入更新的后台处理页面。该页面将文本域的值及隐藏域中的内容和选项的ID号获取后通过SQL语句"updatevotesetquestion='"+question3+"',optType="+optTypel+"whereid="+ida;和"updatevotesetoptContent='"+optContento+"'whereid="+mm;更新原内容。4.4.3投票结果查询模块1、实现目标在投票后台管理系统的主页面中,可以单击功能导航区中的投票结果查询按钮,点击投票结果查询进入按主题分类显示该分类的所有主题的投票结果。该模块界面如下图4-24所示。

投要站来圮示理1:12星猷月孵觀的星朗圭轆双子軸師匙汨环:产庄工明待瓢1投要站来圮示理1:12星猷月孵觀的星朗圭轆双子軸師匙汨环:产庄工明待瓢1帝牒龜3吏趣禺fet塾甦趣課II蜡人賊主題課11査删的事堀杲11帰務旭觀呆亡VW:0疋工:0图4-24管理员投票结果查询界面2、实现过程点击按投票结果查询进入按分类查询的页面,该页面是一个JSP页面,它是一个HTML嵌套Java代码的页面。该页面上方有各个投票的分类的超链接,点击进入该分类的投票结果显示。用SQL语句"select*fromvotewhereflag=0andoptType=1orderbyiddesc"查询该分类的所有主题的记录存入结果集,然后通过循环等操作输出结果集中的每个主题及其选项和条形图。结论在本软件的开发过程中,首先对本系统的整体进行了设计,确定了系统应该具备哪些主要特性和特殊优点,明确了系统总体的设计思路理念。在明确了系统总体的设计思路理念后通过对系统的数据库的分析和总体的功能模块的设计基本明确了本系统开发要做什么,怎么做,然后着手于软件代码的实现。代码实现过程中本系统的软件开发环境主要选择了当前较为流行的MyEclips8.5来进行前台的管理设计,而后台则选用了功能强大的MySQL数据库。在设计过程中主要通过JSP和JavaBean技术的相结合,完成了软件的最终编码过程。现阶段此系统还处于初试用阶段,当然由于时间和个人设计方法的问题,软件在技术方面还是存在着很多不足之处,希望在今后的学习过程中可以进一步的改进和调整。经过这次毕业设计,我的能力有了很大的提高,比如操作能力、分析问题的能力、合作精神、严谨的工作作风等方方面面都进步了。参考文献林上杰,林康司.JSP2.0技术手册第四版.北京.电子工业出版社.2004陈昊鹏,王浩等译.JAVA核心技术.北京•机械工业出版社.2006付京周.JSP程序开发范例宝典.北京•人民邮电出版社.2007殷兆麟,周智仁等.Java网络应用编程.北京.高等教育出版社.2004孙卫琴.精通Struts:基于MVC的JavaWeb设计与开发.北京.电子工业出版社.2004孙卫琴.Java网络编程精解.北京.电子工业出版社.2007柳永坡.Jsp应用开发.北京.人民邮电出版社.2005张海潘.软件工程导论.北京.清华大学出版社.2003少锋.面向对象技术UML教程[M].北京.清华大学出版社.2004阎宏.Java与模式[M].西安.电子工业出版社.2002计磊,李里,周伟.JSP实用

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论