




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、精选优质文档-倾情为你奉上精选优质文档-倾情为你奉上专心-专注-专业专心-专注-专业精选优质文档-倾情为你奉上专心-专注-专业软件开发新技术说明书题目: 在线投票系统 院 系: 计算机科学与工程学院 专业班级: 计科14-3班 学 号: 学生姓名: 朱光明 指导教师: 周华平 2017 年 11 月 30 日 安徽理工大学课程设计(论文)任务书 计算机科学与工程 院 数字媒体技术 教研室学 号学生姓名朱光明专业(班级)计科14-3班设计题目网上投票系统设计技术参数开发语言:java后台数据库:mysql5.7 应用开发环境:myeclipse设计要求开发的系统要数据库设计要合理,有统一的web
2、界面,能够实现设计的全部功能,能够运行、演示。能够体现一个软件的基本功能。工作量完成相关需求分析,JSP页面设计,数据库存储,撰写设计报告工作计划6.9-6.10 需求分析阶段,确定实现的功能模块;6.11-6.14 系统设计阶段,确定设计方案并设计出原型;6.15-6.20 数据库设计阶段,设计数据库;6.21-6.28 详细设计与实现阶段,设计算法并编程调试;6.29-7.1 设计报告阶段,撰写设计报告;7.2-7.3 提交验收阶段,演示系统、验收。参考资料1 陈强.精通Java开发技术 . 清华大学出版社.20142 黄俊.Java程序设计与应用开发.第二版.机械工业出版社.20143
3、王爱国.Java面向对象程序设计. 机械工业出版社.20144 陈云婷.21天学通Java. 电子工业出版社.2014指导教师签字教研室主任签字 2017年 11 月 30 日 指导教师评语:成绩: 指导教师: 年 月 日摘要相较于传统投票方式,在线投票是任何一次商演(时间短、影响范围小)、电视(投入大,效果不明显)或者户外广告(不能快速吸引消费者眼球)在投入产出效率上都难以企及的。在线投票能够迅速提升活动商家的广告价值,降低商家广告成本,提高知名度以及美誉度。网络投票的主要目的就是人群放大:通过网络投票,可以吸引大量的选手及相关亲友的关注,通过以往的数据统计,一名选手参与投票,会带动60人参
4、与。这样可以最大程度的向客户展现实力,扩大社会影响力。系统分为前台和后台两部分,前台主要是对普通用户开放。普通用户将实现注册、投票、重选等操作;后台主要作用是管理员实现登录、投票管理、用户管理等操作。依据前台和后台的不同权限需求,在线投票系统主要分为普通用户和管理员两个功能模块。普通用户模块将实现用户注册、用户登录、用户投票以及投票重选和查看投票结果等功能。 管理员模块将实现管理员登录、发布新投票、撤消投票、查看所有投票、编辑和删除新投票以及用户管理等功能。关键词:网上投票、JSP、MYSQL目录 TOC h z t 一级标题,1,二级标题,2 1系统分析1.1 系统简介随着科技的飞速发展,计
5、算机已经广泛的应用于各个领域之中,而且日趋普及。在计算机应用中很重要的一部分就是编程语言,编程语言的出现打开了计算机应用的新篇章。在这些编程语言中JSP占有着重要的地位,JSP拥有Java编程语言“一次编写,各处运行”的特点1。在当今的网络应用中JSP无处不在,在线投票系统就是JSP功能强大的一个最好的例证。在线投票系统有很多传统投票方式不可比拟的优势。首先,它可以在很短的时间内,通过互联网将不同时间不同地域的用户投票组合到一起,并进行结果反馈,这是传统的投票方法完全做不到的;其次,在线投票系统的效率要比以往的传统投票方法高很多,在这个寸时如寸金的年代,在线投票系统不但省去了投票与计票环节的人
6、力成本,还可以节省很多时间以用作处理其他更重要的事情;综上所述,在线投票系统有着快捷、经济、方便、省时省力等诸多优点都注定它将是未来投票方式的主流。在线投票系统可以用来统计网站用户对某个主题或热门话题的意见。网站管理员也可以通过投票的方式了解用户的看法,或者通过在线投票系统这个媒介去了解用户的思想、意见,并通在线投票系统的结果反馈改进自己的网站设计。政府决策者也可以通过在线投票系统来调查民众对某一项新政策的意见,进而统计数据做出更恰当的决策。在线投票系统是当今各大网站必备的程序之一,如果网站开发者想了解用户对该网站的意见和建议,他可以设计这样一个投票主题:你认为该网站如何?(A.很好B.一般C
7、.不好)然后提供给用户进行投票。1.2 系统功能因在线投票系统有着经济、快捷等诸多优点,所以在实际项目实践中如何很好的实现这些优点便成了整个开发过程中的重中之重。在整个项目实践中,首先对课题的实际要求与需求分析进行详细的考究,查阅大量的相关资料,并且借鉴一些其他投票系统的项目经验,最后提出设计方案。系统分为前台和后台两部分,前台主要是对普通用户开放。普通用户将实现注册、投票、重选等操作;后台主要作用是管理员实现登录、投票管理、用户管理等操作。依据前台和后台的不同权限需求,在线投票系统主要分为普通用户和管理员两个功能模块。普通用户模块将实现用户注册、用户登录、用户投票以及投票重选和查看投票结果等
8、功能。管理员模块将实现管理员登录、发布新投票、撤消投票、查看所有投票、编辑和删除新投票以及用户管理等功能。2系统设计2.1 开发工具简介在在线投票系统的设计发开过程中主要用了JSP技术,其中用到的工具有:JDK1.4、MyEclipse6.0、MySQL、Tomcat等。1.JSP简介JSP技术有点类似ASP技术,它是在传统的网页HTML文件中插入Java程序段和JSP,从而形成JSP文件2。JSP技术使用Java编程语言编写类XML的tags和scriptlets,来封装产生动态网页的处理逻辑。在线投票系统用JSP将网页逻辑与网页设计和显示分离,支持可重用的基于组件的设计,使本系统基于Web
9、的应用程序的开发变得迅速和容易。(1)一次编写,到处运行。在这一点上Java比PHP更出色,除了系统之外,代码不用做任何更改。(2)系统的多平台支持。基本上可以在所有平台上的任意环境中开发,在任意环境中进行系统部署,在任意环境中扩展。相比ASP/PHP的局限性是现而易见的。 (3)强大的可伸缩性。从只有一个小的Jar文件就可以运行Servlet/JSP,到由多台服务器进行集群和负载均衡,到多台Application进行事务处理,消息处理,一台服务器到无数台服务器,Java显示了一个巨大的生命力。 (4)多样化和功能强大的开发工具支持。这一点与ASP很像,Java已经有了许多非常优秀的开发工具,
10、而且许多可以免费得到,并且其中许多已经可以顺利的运行于多种平台之下。2.MySQL简介 MySQL是一个关系型数据库管理系统,由瑞典MySQL AB 公司开发,目前属于 Oracle 旗下产品。MySQL 是最流行的关系型数据库管理系统之一,在 WEB 应用方面,MySQL是最好的 RDBMS (Relational Database Management System,关系数据库管理系统) 应用软件。MySQL是一种关系数据库管理系统,关系数据库将数据保存在不同的表中,而不是将所有数据放在一个大仓库内,这样就增加了速度并提高了灵活性。MySQL所使用的 SQL 语言是用于访问数据库的最常用标
11、准化语言。MySQL 软件采用了双授权政策,分为社区版和商业版,由于其体积小、速度快、总体拥有成本低,尤其是开放源码这一特点,一般中小型网站的开发都选择 MySQL 作为网站数据库。2.2 总体功能模块设计在线投票系统总体功能模块包括普通用户登录模块和管理员登录模块,其具体描述如下:1.普通用户模块(1)用户注册:普通投票用户须通过账号注册方可以进行投票;(3)重选:用户可以进行重新投票;(2)登录:注册成功后,可输入用户名和密码登录系统;从以上介绍中我们能看到,普通用户模块包含着3个不同的功能,其各部分功能关系如图1所示。在线投票系统在线投票系统普通用户用户注册提交投票重选投票图一 普通用户
12、模块图2.管理员模块(1)发布新问题;(2)用户管理,管理员可以增加和删除普通用户(超级用户不能删除),或者更改普通用户密码;(3)查看所有投票;从功能描述的内容中可以看到,管理员模块可以实现发布新投票、重新编辑投票、查看所有投票、删除投票、公布结果和撤销投票等多个完整的功能,并且不同功能之间也存在着一些直接或间接联系,如图2所示。在线投票系统在线投票系统管理员查看所有投票撤销投票发布新投票用户管理重新编辑永久删除公布结果删除用户添加用户更改密码图二 管理员模块图在线投票系统的流程图包含了该系统的投票原理与主要制作方法。从流程图上我们可以看到在线投票系统需要经过登录、显示投票表单、取得投票参数
13、、累加投票数、将投票写入数据库和显示投票结果等步骤,其流程图,如图3所示。开始开始登陆显示投票表单取得投票参数是否取得参数累加投票数将结果写入数据库显示投票结果结束是否图三 投票流程图3系统实现3.1 数据库实现数据库设计是软件开发中的重要环节,是对系统数据全面的、详细的分析。数据库设计的好坏直接关系到整个项目设计的效率的高低,关系到设计的稳定性。根据在线投票系统不同模块之间的联系和前期的设计目的与需求,设计了三个不同的数据表,它们分别是用户表、投票选项表和投票主题表。1.用户表(users)用户表包括所有用户的各种信息,如用户名、密码等详细数据并规定了每个字段的类型,如表1所示。表1 用户表
14、(users)字段名数据类型长度是否主键描述usernameVarcher255是用户名passwordVarcher255否密码2.管理员表(admins)管理员表包括管理员的各种信息,如管理员名称、密码等详细数据并规定了每个字段的类型,如表2所示。表2 管理员表(admins)字段名数据类型长度是否主键描述admnameVarcher255是管理员名称admpwdVarcher255否密码3.投票选项表(items)投票选项表包括每个投票选项的基本信息,如投票编码、问题ID、投票选项和投票选项各选项所得票数等信息,同时此表还规定了字段类型和长度,具体的数据说明如表3所示。表3 投票选项表(
15、items)字段名数据类型长度是否主键描述itemIDint255是投票编码QuestionIDint255否问题IDItemvarcher500否投票选项ItemCountint20否票数4.投票主题表(questions)投票主题表包括投票主题、问题ID、是否对外投票、投票日期以及是否对外公布投票结果等信息,详细数据类型和字段长度如表4所示。表4 投票主题表(questions)字段名数据类型长度是否主键描述QuestionIDInt255是问题IDQuestionvarcher500否投票主题IsVisableint20否是否对外投票Datevarcher100否日期值IsOpenint
16、20否是否对外公布结果3.2 程序模块实现本系统分为普通用户和管理员两部分模块。普通用户模块具有注册、登录、投票等功能;管理员模块则具有登录、发布新投票、编辑投票、撤消投票、删除投票、用户管理与公布结果等功能。3.2.1普通用户1.注册模块普通用户登录在线投票系统需要先进行账号注册,注册成功后方可以其他操作,注册模块的界面如图4所示。图4 用户注册当用户输入合法用户名和密码后就可以完成用户注册,提示页面如图5所示。图5 注册成功提示2.登录模块普通用户在完成注册后方可以登录在线投票系统,注册完毕后单击“请重新登录”便可以重新返回登录页面,如图6所示。图6 用户登录3.投票模块当所有的选项都投票
17、完毕后,用户单击“投票入口”按钮,便可进入投票页面,如图7所示。图7 投票页面4.投票结束当所有的选项都投票完毕后,用户单击“提交”按钮,便完成了投票的流程,如果用户想要查看这些问题的投票结果,投票完毕后点击“查看投票结果”便可以查看当前投票结了,如图8所示。图8 查看结果3.2.2 管理员1.用户管理模块管理员登录在线投票系统后可以对普通用户的账号及密码进行相关的管理操作,管理员可以直接删除用户,也可以更改用户名密码,相关页面如图9所示。图9 用户管理2.投票发布模块管理员登录在线投票系统后可以根据需要发布相关投票,并可以对相关投票进行删除、发布、撤消、隐藏等操作,相关页面如图10所示。图1
18、0 投票发布3.重新编辑模块当有重新编辑某一投票选项的需要时,管理员可以单击“编辑”对相关投票进行重新编辑,编辑完毕后单击“发布按钮”编辑完成,相关页面如图11所示。图11 重新编辑4.公布结果模块管理员发布的投票可以根据实际需要公布和投票结果,当投票过期或者此投票已经没有公布结果的需要时,管理员可以根据需要单击“公布结果”或“隐藏结果”。5.删除模块管理员发布新投票后,如果有删除此投票的需要可以直接单击“删除”,这样此投票就被删除了。6.撤消/发布模块管理员需要重新编辑投票主题时,可以先将该主题撤消,暂停被投票。新发布或是刚被修改的投票主题需要确认“发布”才能被发布。相关页面如图12所示。图
19、12 管理员模块7.查看所有投票模块 当管理员完成新投票发布或者编辑操作后,如果有需要也可以查看自己发布的所有投票,点击“查看所有投票”就可以看到管理员发布的所有投票了。如图13所示。图13 投票情况4总结4.1 设计体会经过这段时间的辅导讨论,我们组的投票网站基本开发完毕。其功能基本符合企业需求。对于数据的输入、修改、查询等问题通过程序进行了有效的解决。并且能对数据库进行权限管理。通过此次课程设计,使我更加扎实的掌握了有关java方面的知识,在设计过程中虽然遇到了一些问题,但经过一次又一次的思考,一遍又一遍的检查终于找出了原因所在,也暴露出了前期我在这方面的知识欠缺和经验不足。实践出真知,通
20、过亲自动手制作,使我们掌握的知识不再是纸上谈兵。 过而能改,善莫大焉。在课程设计过程中,我们不断发现错误,不断改正,不断领悟,不断获取。最终的检测调试环节,本身就是在践行“过而能改,善莫大焉”的知行观。这次课程设计终于顺利完成了,在设计中遇到了很多问题,最后在老师的指导下,终于游逆而解。在今后社会的发展和学习实践过程中,一定要不懈努力,不能遇到问题就想到要退缩,一定要不厌其烦的发现问题所在,然后一一进行解决,只有这样,才能成功的做成想做的事,才能在今后的道路上劈荆斩棘,而不是知难而退,那样永远不可能收获成功,收获喜悦,也永远不可能得到社会及他人对你的认可! 课程设计诚然是一门专业课,给我很多专
21、业知识以及专业技能上的提升,同时又是一门讲道课,一门辩思课,给了我许多道,给了我很多思,给了我莫大的空间。同时,设计让我感触很深。使我对抽象的理论有了具体的认识。通过这次课程设计,我掌握了servlet的识别和测试;熟悉了前后端数据交互的方法;了解了前后端处理字符串的常用方法;以及如何提高代码执行的效率等等,掌握了查询文献的方法和技术,通过查询资料,也了解了mvc原理。 我认为,在这学期的实验中,不仅培养了独立思考、动手操作的能力,在各种其它能力上也都有了提高。更重要的是,在实验课上,我们学会了很多学习的方法。而这是日后最实用的,真的是受益匪浅。要面对社会的挑战,只有不断的学习、实践,再学习、
22、再实践。这对于我们的将来也有很大的帮助。以后,不管有多苦,我想我们都能变苦为乐,找寻有趣的事情,发现其中珍贵的事情。就像中国提倡的艰苦奋斗一样,我们都可以在实验结束之后变的更加成熟,会面对需要面对的事情。 回顾起此课程设计,至今我仍感慨颇多,从理论到实践,在这段日子里,可以说得是苦多于甜,但是可以学到很多很多的东西,同时不仅可以巩固了以前所学过的知识,而且学到了很多在书本上所没有学到过的知识。通过这次课程设计使我懂得了理论与实际相结合是很重要的,只有理论知识是远远不够的,只有把所学的理论知识与实践相结合起来,从理论中得出结论,才能真正为社会服务,从而提高自己的实际动手能力和独立思考的能力。在设计的过程中遇
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 45周年结婚纪念日最暖心短句
- 40岁未婚男人的爱情观
- mqtt协议中的遗言
- 电梯特种设备生产许可证级别划分
- 电脑剪线器不归位最简单解决方法
- 塑造积极工作氛围的举措计划
- 幼儿园学期计划阳光下的快乐学堂
- 提前解除租赁合同履行时间(2025年版)
- 社会舆论监测与年度应对计划
- 2024年高中化学 第三章 烃的含氧衍生物 第二节 醛教学实录 新人教版选修5
- 第九套广播体操评分细则及评分表
- 审计资料交接清单
- 幼儿园教师个人专业成长档案
- 小学语文实用性学习任务群解读及教学建议
- 银行业金融机构监管数据标准化规范(2021版)检核规则
- 新员工EHS管理培训
- 清创缝合术课件
- 托森差速器的设计与仿真
- 江苏扬州市育才小学二年级数学下册期末复习卷(二)及答案
- 播音主持外部技巧:停连重音语气节奏课件讲义
- 小学语文一至六年级必背内容汇总
评论
0/150
提交评论