毕业设计(论文)基于JSP的在线投票系统设计.doc

上传人:文库蛋蛋多 文档编号:3979362 上传时间:2023-03-30 格式:DOC 页数:52 大小:304.50KB
返回 下载 相关 举报
毕业设计(论文)基于JSP的在线投票系统设计.doc_第1页
第1页 / 共52页
毕业设计(论文)基于JSP的在线投票系统设计.doc_第2页
第2页 / 共52页
毕业设计(论文)基于JSP的在线投票系统设计.doc_第3页
第3页 / 共52页
毕业设计(论文)基于JSP的在线投票系统设计.doc_第4页
第4页 / 共52页
毕业设计(论文)基于JSP的在线投票系统设计.doc_第5页
第5页 / 共52页
点击查看更多>>
资源描述

《毕业设计(论文)基于JSP的在线投票系统设计.doc》由会员分享,可在线阅读,更多相关《毕业设计(论文)基于JSP的在线投票系统设计.doc(52页珍藏版)》请在三一办公上搜索。

1、 摘 要在积极建立科学管理机制的今天,仅仅靠原始的手工管理或简单的单机管理,管理部门面对大量的信息,无法有效率地将其中的重要部分提取出来,并做出相应的判断和处理。投票管理者的决策只能依据手工表数据,在浪费大量人力、物力的同时无法做到实时监控,难以保证数据的准确性和及时性。因此,先进的管理思想就成为了一个可望而不可及的目标。投票非常急需一套既有先进管理思想的系统,作为实现目标和提高现有投票管理水平的一种重要手段。随着科学技术的不断提高,计算机科学日渐成熟,其强大的功能已为人们深刻认识,它已进入人类社会的各个领域并发挥着越来越重要的作用。作为计算机应用的一部分,在先进的计算机技术、通信技术、控制技

2、术及IC卡技术基础上,采用系统集成方法,逐步建立一个智能化的投票系统。编写在线投票系统,最重要的就是如何从烦琐的投票结果中,能够实时性对用户投票进行添加,对用户因为人为原因造成的误投,错投进行删除,及时导出全部投票项目的票数,根据各个投票项目的统计票数,进行票数百分比计算,满足用户的实时性查询。在对在线投票系统进行管理时,不同权限的用户可以分别登录,包括管理员权限和普通用户权限,可以对管理员的个人信息进行检索。为了应对截止时间的限制,还应设定在线显示系统时间。关键字:JSP ACCESE数据库 投票系统 管理系统 天气系统AbstractBe building up vote to manag

3、e today of mechanism actively, only depend originality of the handicraft manage or the simple single machine manage, management Dept. public appearance to a great deal of information, cant efficiently will among them of importance part withdraw, and do a judgment and the processing for corresponding

4、.Decision which votes governor can according to the statement data, at waste a great deal of manpower, material resources cant in the meantime attain actually supervise and control, the accuracy of hard assurance data with in time sex.Therefore, the forerunners management thought carried out and the

5、n becamed an inaccessible target in the vote.The vote needs the management information that a set of current forerunner manages thought system urgently very much, is a kind of important means which carries out a target and raises an existing vote a management level.The technical along with science o

6、f raise continuously, the calculator science is gradually mature, the its strong function has already been peoples deep understanding, it has already entered each realm of the society of mankind to erupt to flick a more and more important function. Be a calculator applied one part, the teaching miss

7、ions arrange in order is a hard nut to crack, numerous high schools, research organizations and personals carried on a great deal of research and the development work from the theories and fulfillment.Key words: JSP Technology ACCESE databas目录第一章问题来源11.1 开发背景11.2开发的可行性分析21.2.1 技术可行性21.2.2 经济可行性21.2.

8、3 操作可行性3第二章基础理论知识42.1 Access数据库简介42.2 Jsp编程语言52.3 SQL语句52.4数据库系统6第三章需求分析93.1系统研究目标93.2系统主要特色93.3 模块功能需求93.4 性能需求103.5 功能需求103.6 数据流图113.7 数据字典14第四章总体设计154.1 总体设计154.2 系统功能逻辑结构174.3系统功能模块的设计194.4 系统协作图22第五章数据库设计265.1 数据库设计的基本步骤265.2 需求分析275.3 数据库的概念设计285.4数据库逻辑结构设计30第六章详细设计326.1管理员登录模块326.2 投票首页模块336

9、.3 投票实现模块356.4 投票结果模块366.5 投票项目管理模块376.6天气查询模块:41第七章系统实现437.1投票首页模块437.2 投票项目管理模块447.3 管理员身份认证模块457.4 天气查询模块46结束语48参考文献50第一章 问题来源1.1 开发背景随着INTERNET的发展,世界网民的数量急剧增加,社会的信息化强度增强,企业竞争之激烈,故对市场信息的掌握范围不仅仅是周边的一些信息,而应把范围扩展到全国,甚至全世界,INTERNET恰恰是实现这目标的有利工具。对于新产品,新观点的调查范围应该更广泛,消息应该及时反馈给企业单位,故一个网上在线投票系统应允而生,它正好充分满

10、足客户的需求,信息反馈的范围扩大,人力资源的节省,从而使得企业在竞争激烈的市场中拥有更强大的资本。开发此投票系统是为了更好的把市场的信息更准确更快速的反馈给客户,使信息的来源更广泛,从而提高信息的准确性。运用此系统可以降低企业为市场调查而消耗的人力和物力,利用节省的资源提高产品的质量,增强竞争力。一个网站不断发展的前提就是众多用户的支持,一个好的网站一定要注意与用户之间信息的交流。能够有效得到用户反馈的信息,并及时对网站内容进行改进,这也是一个网站持续发展的基础。也正是由于以上原因,网络上各式各样的投票系统层出不穷。本次课程设计的目的,就是来制作一个在线投票系统,该系统可以实现对投票数量进行累

11、加、查询、统计票数等操作。在线投票系统主要用来统计网站用户对某个主题或热门话题的意见。决策者通过这些统计数据做出相应的决策。在线投票系统是一般网站必备的程序之一。我设计的投票系统主要是针对网民对于现阶段全国名牌大学的综合实力进行排名,为想要报考这些院校的学生提供一定的参考。 1.2开发的可行性分析1.2.1 技术可行性 (1)操作系统: Windows 2000 Server 及以上服务器版本;(2)数据库管理系统:SQL Server 2000;(3) 服务器:Tomcat 5(4)编程工具:编程软件为MyEclipse5.5,编程语言选用Jsp。1.2.2 经济可行性1.支出 (1)系统开

12、发费用 1)人员费用:本系统开发期为三周,试运行一周。开发期需要开发人员1人,试运行期需要开发人员1人。人员费用为0.4万元。 2)设备费:本系统所需的硬件设备费用为0.6万元。 3)不可预见费:按开发费用的15%计算。 (2)系统运行费用 1)系统维护费:需要 6人/年进行系统维护,维护费为1.8万元 2)设备维护费:设备更新费为0.6万元。设备维护费为0.6万元。 3)消耗材料费:每年按600元计算。 2.收益 (1)提高工作效率(2)减少工作人员。1.2.3 操作可行性本在线投票系统的用户只需懂得运用互联网络者均可以使用,此系统在网站中的使用频度预计非常的频繁; 该系统属于实用型网站,需

13、要对数据的处理,比如对投票票数的统计并把结果反馈给投票者,故对数据的及时更新要求较高,保证数据的真实性。该系统在任何操作系统下都可以运行,但必须装有SQL2000数据库。该系统的操作包括:单选投票、删除投票、添加投票、查看投票。单选投票:用户只能从多个选项中选取一项进行投票。删除投票:管理员对大学进行删除。添加投票:管理员对大学进行添加。查看投票:提供用户查看当前投票情况,投票结果以条形图显示。第二章 基础理论知识2.1 Access数据库简介ACCESS是桌面型数据库,优点是:操作灵活、转移方便、运行环境简单,对于小型网站的数据库处理能力效果还不错。缺点是:不支持并发处理、数据库易被下载存在

14、安全隐患、数据存储量相对较小、数据量过大时严重影响网站访问速度和程序处理速度。2.2 Jsp编程语言 JSP编程语言的特点:将内容的生成和显示进行分离生成可重用的组件 采用标识简化页面开发JSP能提供所有的Servlet功能 健壮的存储管理和安全性 一次编写,随处运行 JSP的平台适应性更广 Java中连接数据库的技术是JDBC 简单易学 软件编程体系简介JSP体系结构:在JSP中,SERVLET作为服务器与客户端的接口,接受来自用户的参数,并响应用户的请求;JAVABEAN用于逻辑功能的实现;JSP编程技术对于数据进行显示;JDBC作为JSP与数据库的接口;XML为扩展的标记语言,可以定义自

15、己的标记语言。2.3 SQL语句 SQL分类: 数据定义语言(DDL): CREATE, ALTER, DROP, DECLARE 数据操作语言(DML):SELECT, DELETE, UPDATE, INSERT 数据控制语言(DCL):GRANT, REVOKE, COMMIT, ROLLBACK2.4数据库系统与人工管理和文件系统相比,数据库系统的特点主要有以下几个方面:数据结构化:在文件系统中,尽管其记录内部已有了某些结构,但记录之间没有联系。而数据库系统则实现了整体数据的结构化,这是数据库的主要特征之一,也是数据库与文件系统的本质区别。数据的共享性高、冗余度低、易于扩充数据库系统从

16、整体角度看待和描述数据,数据不再面向某个特定的应用程序,而是面向整个系统;因此,数据可以被多个用户、多个应用程序共享使用。数据共享可以大大减少数据冗余,节约存储空间。数据共享还能够避免数据之间的不相容性与不一致性。数据独立性高数据独立性包括数据的物理独立性和逻辑独立性。物理独立性是指用户的应用程序与存储在磁盘上的数据库中的数据是相互独立的。也就是说,数据在磁盘上的数据库中如何存储是由DBMS管理的,用户程序不需要了解,应用程序要处理的只是数据的逻辑结构,这样一来当数据的物理存储结构改变时,用户的程序不用改变。逻辑独立性是指用户的应用程序与数据库的逻辑结构是相互独立的,也就是说,数据的逻辑结构改

17、变了,用户程序也可以不改变。数据由DBMS统一管理和控制数据库的共享是并发的(concurrency)共享,即多个用户可以同时存取数据库中的数据,甚至可以同时存取数据库中的同一个数据。DBMS必须提供以下几方面的数据控制功能:数据的安全性保护(security)数据的完整性检查(integrity)数据库的并发访问控制(concurrency)数据库的故障恢复(recovery)数据库管理阶段应用程序与数据之间的对应关系如图 1.3所示第三章 需求分析 31系统研究目标该系统的研究目标:在国际金融危机的背景下,我国就业压力矛盾显著突出,为追求更高的生活品质,人们开始了对更高学历的追求,考名牌大

18、学,考名牌研究生成为他们的目标与动力。为此,本系统号召网民对心目中最牛的大学进行投票根据投票结果对我国大学的综合实力进行排名,给用户以实时性的信息,为用户在报考院校时提供参考依据;此系统将以图形化的界面来显示投票结果,一目了然的回馈客户的的需求信息。3.2系统主要特色本在线投票系统具有的主要特色:其一,方便的操作。原有的手工投票管理基本上是人工操作,效率低下,缺乏方便性,在线投票管理系统运用计算机和其他附加设备,不再需要手工操作,基本上是全自动化,能够节省人力、最大限度地利用各种宝贵的资源,大大的提高了效率。 其二,友好的界面。友好的用户界面会给人一种亲切的感觉,在使用起来不会觉得沉闷,效率自

19、然也会提高了。其三,强大的功能,能够满足各种统计需要,实现快速简单统计。 3.3 模块功能需求各个模块所对应的需求如下: 投票首页模块:该模块面向对象为所有访问页面用户,其中包括:当前系统时间的显示,实现截止时间的要求;管理员信息的查询,登录用户信息的显示;对心目中的大学进行投票,并对结果进行查询。投票实现模块:此模块供用户对投票项目进行投票所用。在投票首页上,将会显示最近一个投票项目和其他投票列表,用户可自由选择那些尚未过期的项目进行投票。投票操作具体为:用户选择一个选项,提交,即可投票成功,此时页面会跳转至显示投票结果的页面。投票结果模块此模块供用户查看该项目已有的投票情况。投票结果显示页

20、面会显示相应投票选项的得票率和该项目总的得票数。u管理员登录模块该模块用于管理员登录。登录验证后,管理员才可以对投票信息进行维护。如增删投票项目等。u投票管理模块此模块为管理员操作的模块。管理员登入系统后,可对本系统的所以投票项目进行相应的管理,如:添加投票项目,删除投票项目等。3.4 性能需求本系统可用普通PC,windows XP系统,对硬件无很大要求。3.5 功能需求本系统具体要实现的功能内容包括:u数据库选择 u数据库接口的实现 u数据库建模方法 u程序开发软件 u需求分析 u需求的提取 u需求定义与规约 u系统总体设计 u系统结构图 u数据功能模块设计 u系统的主要功能设计 u投票界

21、面模块的设计 u投票项目模块的设计 u投票结果模块的设计 u用户信息模块的设计 u管理员登录的设计与实现 3.6 数据流图一 符号定义1数据的源点或终点2 变换数据的处理3数据存储4 数据流二 数据流图的组成元素源点终点 处理 用户 计算信息 添加记录 删除记录数据流 数据存储用户登录信息 投票结果普通用户信息 管理员信息 投票信息 用户计算信息投票结果投票结果投票结果添加记录信息管理员信息验证信息用户登录信息删除表项、添加表项首页投票信息管理员信息页面普通用户信息页面首页显示页面删除记录信息 3.7 数据字典名字:认证界面别名:描述:对当前用户进行认证定义:普通用户+管理员+其他位置:身份认

22、证界面页面名字:管理界面别名:描述:对投票项目进行添加和删除定义:添加投票项目+删除投票项目位置:管理界面名字:用户登录界面别名:描述:用户进行操作页面定义:投票查询信息管理登录位置:首页第四章 总体设计4.1 总体设计该部分将对系统进行总体设计,包括系统逻辑图,功能模块的概要设计,交互界面设计等内容,采用软件工程设计思想,为详细设计打好基础。基本设计概念和系统总流程图;本系统的总流程图如下图所示:前台用户界面后台数据库管理查看投票结果选择项目投票登录界面在线投票系统选择身份输入信息判别身份普通用户信息界面普通用户管理员用户界面管理选项用户界面删除项目添加项目管理员信息4.2 系统功能逻辑结构

23、本系统按照功能逻辑分为五个板块:投票首页模块,投票实现模块,投票结果模块,管理员登录模块,投票项目管理模块。具体功能逻辑图如下:在线投票普通用户管理员登陆模块投票管理模块投票首页模块管理员信息模块添加投票模块删除投票模块投票结果模块投票实现模块4.3系统功能模块的设计u 用户投票模块u 管理员登录模块u 管理员添加投票项目模块u 管理员删除投票项目模块4.4 系统协作图u 用户投票模块u 用户添加投票项目模块u 管理员登录模块u 管理员添加投票项目模块u 管理员删除投票项目模块第五章 数据库设计5.1 数据库设计的基本步骤u 需求分析u 概念结构设计u 逻辑结构设计u 物理结构设计u 数据库实

24、施u 数据库运行和维护5.2 需求分析 需求分析简单地说就是分析用户的要求。需求分析是数据库的起点,需求分析的结果是否准确地反映了用户的实际要求将直接影响到后面各个阶段的设计,并影响到设计的结果是否合理和实用。1) 信息要求 用户从数据库中得到想要投票支持的大学2) 处理要求 系统将投票结果进行保存,并对最终结果进行统计反馈给用户。3) 安全性和完整性要求 管理员可以对项目进行添加和删除操作,普通用户不能操作。数据库中的数据表:voteidnotec_num1清华大学102北京大学103复旦大学104武汉大学105中山大学456西安交大397北京邮电大学158长春工业大学人文信息学院155.3

25、 数据库的概念设计 将需求分析得到的用户需求抽象为信息结构即概念模型的过程就是概念结构设计。它是整个数据库设计的关键。概念结构的主要特点:u 能真实、充分的反映现实世界。u 易于理解。u 易于更改。u 易于向关系、网状、层次等各种数据模型转换。系统ER图设计与分析 符号说明:属性:联系名:实体型:两个实体间的联系:一对一联系(1:1)一对多联系 (1:m)多对多联系 (m:n)系统ER图如下: 5.4数据库逻辑结构设计 逻辑结构的任务就是把结构设计阶段设计好的基本E-R图转化为DBMS产品所支持的数据模型相符合的逻辑结构。逻辑结构设计步骤: 关系逻辑结构:投票项目选项表:第六章 详细设计6.1

26、管理员登录模块程序页面名称:admin_login.html程序功能:实现管理员的登录,以便进行投票项目的管理。权限范围:整个投票系统的管理员输入数据:管理员账号和密码输出数据:无程序简单逻辑:u 输入管理员用户名和密码,回车确认u 检查输入是否合法,合法跳入admin.jsp,不合法跳入check_login.jsp,并提示错误u 根据所获得的用户名、密码合法信息,跳入投票项目管理页面,进行已存在的投票管理。程序流程图:用户登录用户名和密码管理信息判别普通用户不正确正确投票项目管理页面6.2 投票首页模块程序页面名称:shouye.jsp程序功能:用于显示当前你认为哪所大学综合实力最强进行投

27、票、并对投票结果进行查询。权限范围:所有浏览本投票系统的用户输入数据:想要投票的大学输出数据:将所有用户的投票结果进行显示。程序简单逻辑:u 访问此投票系统的首页,如果是普通想要进行投票的用户,则直接点击想要投票的项目主题。u 如果是管理员想进行投票项目管理,则在页面的管理员界面登录,进入管理页面。u 普通的投票用户点击投票主题后就转入了投票结果页面。程序流程图:投票系统首页用户身份普通用户投票管理界面6.3 投票实现模块程序页面名称:details.jsp程序功能:选中当前投票主题的一个选项,提交信息后,进入投票实现模块,该模块将会修改投票结果记录,并将结果进行显示。权限范围:所有进入本投票

28、系统投票的用户输入数据:投票用户的id,投票项目的主题。输出数据:显示该投票项目的投票结果程序简单逻辑:u 点击首页的某个投票项目主题,选择一个投票选项,确定后点提交;。u 提交投票后,系统会对相应的数据库表做处理,vote表中选中的c_num值和加1;u 最后,会跳转到投票结果显示页面,用户即可看到刚刚投票项目的投票结果。程序流程图:投票主题提交数据库表处理投票结果显示页面6.4 投票结果模块程序页面名称:details.jsp程序功能:该页面显示投票结束后被投票项目的投票结果,该模块以数字的形式显示各选项的投票率,并且显示当前时间、投票截止时间和投票总数等信息。权限范围:访问投票系统并进行

29、过项目投票的所有用户均可看到投票结果。输入数据:无输出数据:数字和文字相结合的投票结果显示程序简单逻辑:u 此模块相对较简单,承接投票实现模块;u 当对投票项目进行完投票提交后,相应的数据库表内容也被修改了,接下来就是用数据库选择语句把需要显示的信息筛选出来,显示在页面上。程序流程图:首页投票结果显示页面查询当前时间截止时间6.5 投票项目管理模块u 添加投票项目子模块:程序页面名称:addvote.jsp程序功能:通过管理员认证进入添加投票项目页面,填写需要添加的投票项目的内容,如:想要投票支持大学的名称,填写完毕后提交即可,新的投票项目就会显示在主页面上。权限范围:系统管理员输入数据:支持

30、的大学名称。输出数据:投票系统首页,并且可以看到刚刚添加的新投票项目作为最新投票项目在投票项目列表的最后一个。程序简单逻辑:u 在系统首页时,管理员先登录进入管理系统,再通过身份认证,即可进入添加投票项目页面;u 该页面有一个对投票主题进行添加的文本框,主要就是对投票项目内容的详细添加;u 填表完成后提交,此时转入数据库后台处理。u 完成后,数据库的vote表中就多了一条记录,添加新项目页面也转回投票系统首页,可供用户继续进行其他操作。程序流程图:投票系统首页管理界面身份认证项目添加首页返回u 删除投票项目子模块:程序页面名称:delvote.jsp(主要是一些删除函数的处理)程序功能:当某些

31、投票项目不属于本次投票的范围 如:牛津大学,还有一些因为管理员失误而造成其成为投票项目,管理员已经不再需要时,便可对该项目进行删除操作,。权限范围:系统管理员输入数据:需要被删除的投票项目主题输出数据:从新弹出首页,不再有删除的项目。程序简单逻辑:在系统首页,管理员登录进入管理系统页面,在要删除的投票项目主题旁单击删除超链接,转到delvote.jsp处理页面;通过其中的SQL语句DELETE FROM VOTE删除整个投票项目,提取相应的关联索引信息,去数据库vote表中搜寻相应的投票记录,进行删除处理;确认删除后,回到系统管理界面,此时可以看到,刚被删除的投票项目已不在投票项目列表中。程序

32、流程图:投票系统首页管理界面身份认证项目删除首页返回6.6天气查询模块:程序页面名称:3.jsp程序功能:对今日黑龙江 、长春、沈阳三省中各主要城市的天气情况进行查询权限范围:所有进入本投票系统投票的用户输入数据:无输出数据:对想要查询的城市进行选择,提交后显示当地的天气。程序简单逻辑:所有进入本投票系统投票的用户都可以对天气情况进行查询,用户首先进入城市选择页面3.jsp,选择城市后提要。后台页面处理后显示今日天气。程序流程图:投票系统首页天气查询选择城市城市天气后台处理第七章 系统实现7.1投票首页模块这是整个投票系统的首页,主要的一块儿就是列出所有投票项目,左上角为当前系统时间,还可以对

33、今日各省市的天气情况进行查询,还可以进入管理系统。 具体界面设计图如下:7.2 投票项目管理模块 添加新投票项目和删除投票项目界面设计:7.3 管理员身份认证模块通过用户名、密码、登录类型的输入判别当前用户是否可以进入管理系统;普通用户用户无权进入。普通用户登录时:7.4 天气查询模块所有进入本投票系统投票的用户都可以对天气情况进行查询,用户首先进入城市选择页面,选择城市后提要,后台页面处理后显示今日天气。结束语第一,由于本系统是用jsp编写的,所以基于jsp本身有些缺点,所以使得本系统代码执行起来效率还是相对较低,而且它只有非类型语言:,Javascript。所以相对其他语言,比较不那么灵活

34、,代码重用性也相对差些,不过简单易懂,还是它的优点的。第二,因为本系统使用access数据库,而ACCESS是小型数据库管理系统,它对并发操作的控制和数据库安全性方面远没有SQL强大,所以适合较小的系统,用于本次毕业设计也比较适合。第三,总的来说,此系统的功能基本满足用户需求,性能基本达到要求,具有可用性和友好性。致谢本次毕业设计,是在金龙海老师精心指导和大力支持下完成的。金龙海老师以其严谨求实的治学态度、高度的敬业精神、兢兢业业、孜孜以求的工作作风和大胆创新的进取精神对我产生重要影响。他渊博的知识、开阔的视野和敏锐的思维给了我深深的启迪。同时,在此次毕业设计过程中我也学到了许多了关于本专业方

35、面的知识,编程实践技能有了很大的提高。 另外,我还要特别感谢大学四年教过我的所有老师,他们把我从一个对编程一无所知的门外汉培养成能靠自己的力量,基本完成一个简单的系统。感谢这些优秀的老师,是他们教会我最重要的编程基础,使得我有今天的成绩。最后,我还要特别感谢曾给我无私帮助的同学,一个人做任何事,不可能是一帆风顺不遇到难题和挫折的,在我的设计过程中,我碰到过不少问题,在我的积极提问和老师、同学的耐心解答下,我得以顺利完成毕业设计和论文。在此我也衷心的感谢他们。参考文献1 ACM Transactions on Mathematical Software. 20012 Journal of Experimental Algorithmics (JEA) Association for Computing ,19963 郑阿齐主编 郑明强张晓东 SQL SERVER.实用教程 电子工业出版社4 张明亮赵彬.JSP从入门到精通. 电子工业出版社2008.1 5 萨师煊王珊.数据库系统概论.高等教育出版社2008.3 6 古乐 史九林 编著 软件测试技术概论 清华大学出版社2008.117 陈凡 何红杰 编著 java程序设计 机械工业出版社2005.88 石志国、刘易伟、王志良. JSP应用教程 . 清华大学出版社2008.5

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 办公文档 > 其他范文


备案号:宁ICP备20000045号-2

经营许可证:宁B2-20210002

宁公网安备 64010402000987号