投票系统分析
- 格式:doc
- 大小:1.46 MB
- 文档页数:35
一、实验目的1. 熟悉投票程序的基本原理和实现方法;2. 提高编程能力和逻辑思维能力;3. 培养团队协作和沟通能力。
二、实验环境1. 操作系统:Windows 102. 开发工具:Visual Studio 20193. 编程语言:C#三、实验内容1. 投票程序设计2. 投票程序实现3. 投票程序测试与优化四、实验步骤1. 设计投票程序(1)功能需求分析:投票程序应具备以下功能:a. 投票人注册:允许用户注册成为投票人,并设置用户名和密码;b. 投票:允许注册用户对候选人员进行投票;c. 查看投票结果:允许用户查看候选人的得票情况;d. 管理员功能:管理员可以查看所有投票信息,删除用户和投票记录。
(2)设计投票程序架构:a. 数据库设计:设计投票人表、候选人表、投票记录表;b. 界面设计:设计登录界面、注册界面、投票界面、查看投票结果界面、管理员界面。
2. 实现投票程序(1)创建项目:在Visual Studio 2019中创建一个C# Windows Forms应用程序项目;(2)数据库连接:使用连接数据库,实现数据访问层;(3)界面设计:使用Windows Forms Designer设计各个界面;(4)功能实现:a. 投票人注册:实现注册功能,包括用户名、密码、邮箱等信息的录入;b. 投票:实现投票功能,包括候选人信息的展示和投票操作;c. 查看投票结果:实现查看投票结果功能,展示候选人的得票情况;d. 管理员功能:实现管理员功能,包括查看所有投票信息、删除用户和投票记录。
3. 测试与优化(1)功能测试:对投票程序进行功能测试,确保各个功能模块正常运行;(2)性能测试:对投票程序进行性能测试,优化程序运行速度和稳定性;(3)界面优化:对投票程序界面进行优化,提升用户体验。
五、实验结果与分析1. 实验结果经过设计与实现,投票程序成功实现了以下功能:(1)投票人注册:用户可以注册成为投票人,并设置用户名和密码;(2)投票:注册用户可以对候选人员进行投票;(3)查看投票结果:用户可以查看候选人的得票情况;(4)管理员功能:管理员可以查看所有投票信息,删除用户和投票记录。
目的:提供给学生参与科学研究和技术开发的机会,使得学生得到科研工作的基本训练。
促进教学与科研相结合,培养学生的科研意识,团队精神和协作能力。
通过科研训练使学生逐步形成严谨的科学研究作风和学术道德品质,锻炼和提高实践能力。
要求:指导教师下达训练题目并分配任务,由学生组成研究小组(1-2人),在下面题目中自由选题,独立或合作完成训练题目,每组学生要进行调查研究、文献查阅、方案设计、撰写开题报告、方案实施、结果分析、完善设计方案、撰写总结报告等过程。
要求学生熟练掌握程序设计、数学、数据结构与算法、数据库以及软件工程等相关知识。
一、进度安排及主要内容第 1、2 学时老师下达科研训练题目分配任务,第 3、4 学时根据题目要求撰写开题报告第 5、6 学时根据题目要求和开题报告开始系统详细设计第 7、8 学时按照系统设计文档开始系统的开发第 9、10 学时继续系统的开发和测试工作、完善系统第 11、12 学时修补bug、撰写科研训练总结二、科研训练题目及要求题目名称:在线投票管理系统的设计与实现题目要求:建立一个在线的投票管理系统.目标系统的主要功能是让用户根据一个主题以及相关的投票选项,选出正确的一个或者多个选项内容。
通过互联网进行投票,不仅可以提高投票效率,而且能实时地查看投票结果。
另外需要实现后台管理功能,管理员输入正确的密码之后,进入后台管理,可以对投票主题进行管理,如:添加、删除、修改投票主题,设置当前投票主题以及设置选项为多选或单选等。
同时为了防止恶意刷票等,需要实现验证码,限制IP等必要措施。
具体要求:(1)设计出数据库,完整实现整个目标系统。
(2)界面友好、操方便;(3)进行全面的需求分析;(4)软件开发文档齐全、重要算法描述清楚。
三、研宄的目的及意义与以往的投票方式相比,电子投票的优势是其他投票方式难以望其项背的。
由于投票方式的信息化,操作更加便捷、快速、也更高效,具备更强的适应能力。
这样的新型的投票方式,没有任何的形式上的限制,不需要对投票进行记录,减少了结果的误差。
一、实训背景随着互联网技术的飞速发展,网络投票系统在各个领域得到了广泛应用。
为了提高我们的专业技能,加强实践能力,我们进行了网络投票系统实训。
本次实训旨在让我们深入了解网络投票系统的原理、设计和实现,提高我们在网络编程、数据库管理和网络安全等方面的综合能力。
二、实训目标1. 理解网络投票系统的基本原理和设计思路;2. 掌握网络投票系统的开发流程和关键技术;3. 提高网络编程、数据库管理和网络安全等方面的实际操作能力;4. 培养团队协作和沟通能力。
三、实训内容1. 网络投票系统需求分析根据项目需求,网络投票系统应具备以下功能:(1)用户注册与登录;(2)投票创建与管理;(3)投票结果展示;(4)投票数据统计与分析;(5)系统安全与维护。
2. 网络投票系统设计(1)系统架构设计:采用B/S(Browser/Server)架构,分为前端和后端两部分。
前端采用HTML、CSS、JavaScript等技术实现用户界面;后端采用Java、Python或PHP等编程语言实现业务逻辑处理。
(2)数据库设计:采用MySQL数据库,设计用户表、投票表、选项表、投票结果表等,用于存储用户信息、投票信息、选项信息、投票结果等数据。
(3)功能模块设计:①用户模块:实现用户注册、登录、修改个人信息等功能;②投票模块:实现投票创建、管理、查看、投票等功能;③结果展示模块:展示投票结果,包括投票数、得票率等;④数据统计与分析模块:对投票数据进行统计分析,为用户提供决策依据;⑤系统维护模块:实现系统日志记录、数据备份与恢复等功能。
3. 网络投票系统实现(1)前端开发:使用HTML、CSS、JavaScript等技术实现用户界面,实现用户注册、登录、投票等功能。
(2)后端开发:使用Java、Python或PHP等编程语言实现业务逻辑处理,包括用户管理、投票管理、结果展示、数据统计与分析等。
(3)数据库操作:使用MySQL数据库进行数据存储、查询、更新等操作。
电子投票系统的安全性分析与改进一、前言现代化的技术不断地革新,如电子投票系统的出现为投票过程带来了便利,使得选民可以更加快捷地选择候选人。
但是,电子投票系统本身也面临着一定的风险,其中最大的风险就是系统安全问题。
二、电子投票系统的概述电子投票系统是现代化投票系统的一种,它利用最新的技术和互联网的优势,可以让选民迅速地投票。
这种投票系统使用纸质选票的方法来记录选民的投票结果,并将选票扫描表示成数字形式方便计算。
它是被广泛使用的现代化投票系统之一,可以显著提高投票效率和便利性。
三、电子投票系统的安全性问题电子投票系统涉及很多涉密信息如选民信息等敏感数据。
另外,因其开放性,每个人都有可能对系统进行利用或者攻击,例如篡改数据和重复投票。
这些问题导致了电子投票系统的安全性问题,为选民的投票过程增加了很多风险。
1. 投票信息加密不足电子投票系统中采用的措施并不一定可以保证投票的信息被妥善保护。
例如,选民的个人信息可以被窃取并用于未来的欺诈和扰乱选举结果。
这就需要实现更强大的加密方法来保护这些敏感信息。
2. 数据库的安全性受到威胁电子投票系统的所有数据都存储在数据库中,其中包括选票的结果和选民的信息。
那么数据库的安全性就成为系统安全中的一个关键问题。
如果黑客攻击了数据库,那么这些敏感的信息可能遭受攻击或泄露。
因此,系统应该加强保护,确保没有任何人能够获得这些数据。
3. 硬件层口令不够安全可以通过网络攻击访问电子投票系统的硬件层,例如电子投票机或计算机,从而影响投票的结果。
这样的攻击可以通过暴力破解口令或者寻找系统的漏洞来实现。
这些攻击都会影响整个投票系统的安全性。
四、改进电子投票系统安全问题的措施1. 实现全面的安全策略为了解决电子投票系统的安全问题,必须采取全面的安全策略,包括合理设计密码学加密算法、按照架构和安全标准的设计进行评估、严格的系统访问控制以及维护强大的故障管理和问题解决工具。
全面的安全策略可以打击投票过程中的怀疑和不信任,增强选民对电子投票系统的信心。
智慧表决系统设计方案设计方案:智慧表决系统一、引言智慧表决系统是一种利用现代科技手段进行投票表决的系统,能够提高表决效率、减少人工操作、增强投票安全性。
本设计方案旨在设计一种智慧表决系统,满足用户的实际需求,提高表决过程的效率和准确性。
二、系统需求分析1.功能需求:(1)支持多种表决方式,比如全员投票、选举投票、提案投票等;(2)支持设置表决议题和表决候选人;(3)支持在线投票和现场投票两种方式;(4)支持实时显示表决结果和统计分析;(5)支持用户身份验证和投票权限控制;(6)支持历史表决记录的查询和导出。
2.性能需求:(1)系统响应时间短,能够快速处理大量用户同时投票;(2)系统具有较高的稳定性和可靠性,能够保证表决数据的安全性;(3)系统界面友好,操作简单易懂,提供帮助文档和技术支持。
3.安全需求:(1)系统应具有严格的用户身份验证机制,防止非法用户投票;(2)系统应采用加密技术保护用户投票数据的隐私;(3)系统应具备防止黑客攻击和篡改投票结果的能力。
三、系统设计1.系统架构设计:(1)前端设计:采用响应式设计,支持多种终端访问,包括PC端、手机端等;(2)后端设计:采用分布式架构,拆分业务逻辑,提高系统并发处理能力;(3)数据库设计:采用关系型数据库存储表决数据,使用主从复制和分布式存储保证数据安全和高可用性。
2.系统模块设计:(1)用户管理模块:实现用户注册、登录、身份验证等功能;(2)表决管理模块:实现表决议题和候选人的录入、修改、删除等功能;(3)投票管理模块:实现在线投票和现场投票的接收和处理,以及投票结果的统计和分析;(4)数据查询模块:提供历史表决记录的查询和导出功能。
3.系统接口设计:(1)前端接口:提供用户界面展示,与后端进行数据交互;(2)后端接口:接收前端发起的请求,处理业务逻辑,并返回结果;(3)第三方接口:可与外部系统对接,实现用户认证、短信通知等功能。
四、系统实施1.开发工具选择:根据需求分析,选择合适的开发工具和编程语言,如Python、Java等;2.开发流程:(1)需求分析和系统设计:根据用户需求进行详细的系统分析和设计,制定开发计划;(2)系统搭建:搭建开发环境,创建数据库和表,设计系统架构;(3)模块开发和联调:按照设计方案,逐个开发各个功能模块,并进行联调测试;(4)系统部署和上线:将系统部署到服务器上,并进行全面测试,确保系统稳定运行;(5)系统维护和升级:监控系统运行状况,及时修复bug,根据用户反馈进行系统升级。
在线投票系统随着科技的不断进步,网络投票成为了现代社会一种方便快捷的投票方式。
在线投票系统的出现,为选举、调查和意见表达提供了更高效、更广泛的途径。
本文将探讨在线投票系统的使用、优势和发展趋势。
一、在线投票系统的使用在线投票系统是指通过网络平台进行投票或调查的一种设施。
它的使用方便快捷,使得参与者能够随时随地参与投票活动。
同时,在线投票系统也提供了更精确的数据统计和分析功能,可以实现实时的投票结果统计。
在线投票系统的使用范围广泛。
政府机构、学校和企业等组织可以利用在线投票系统进行选举、调查和决策表达。
在线投票系统还被广泛应用于各种竞赛、活动和评选中,如音乐比赛、影视节目的评选等。
二、在线投票系统的优势1. 方便快捷:在线投票系统可以随时随地进行投票,不受时间和地点限制。
参与者只需要一个网络连接即可参与投票活动,大大提高了投票的便利性。
2. 数据准确:在线投票系统通过技术手段对投票结果进行实时统计,减少了人为操作的错误。
这样可以保证投票结果的准确性,为决策提供可靠的依据。
3. 信息安全:在线投票系统采用了多重安全措施,保护投票的隐私和安全。
通过身份验证和加密技术,确保只有符合条件的人员才能参与投票活动。
4. 节约成本:传统的纸质投票需要印刷票据、分发和回收票据,费时费力。
而在线投票系统完全实现了电子化,省去了这些环节,大大降低了投票成本。
三、在线投票系统的发展趋势随着技术的不断进步,在线投票系统也不断发展。
以下是几个在线投票系统的发展趋势:1. 移动化:随着智能手机、平板电脑的普及,移动投票成为了未来的趋势。
人们不再需要通过电脑参与投票,只需使用手机就可以完成投票过程。
2. 区块链技术:区块链技术的出现使得在线投票更加安全可靠。
区块链的特性保证了投票的透明性和防篡改性,有效避免了作弊等问题。
3. 多元化功能:未来的在线投票系统将会包含更多的功能,如实名制投票、候选人信息展示等。
这样可以进一步提升投票的公正性和参与度。
在线投票系统的设计与开发任务计划书一、项目背景和目标:随着互联网技术和智能手机的普及,越来越多的投票活动开始使用在线投票系统,以方便参与者进行投票和统计结果。
本项目旨在设计和开发一套功能完备、安全可靠的在线投票系统,满足用户在投票活动中的需求。
二、项目需求分析:1.用户需求:-用户可以注册和登录系统,管理自己的个人信息。
-用户可以发起投票活动和设置投票选项。
-用户可以参与他人发起的投票活动,并进行投票。
-用户可以查看投票结果和统计数据。
2.功能需求:-用户管理:包括注册、登录、忘记密码、修改个人信息等功能。
-投票活动管理:包括创建、编辑、删除投票活动,设置投票选项等功能。
-投票管理:包括用户可以参与他人发起的投票活动,并进行投票的功能。
-统计与展示:包括投票结果的统计分析和数据可视化展示。
3.安全需求:-用户身份验证:确保用户注册、登录和操作的安全性。
-防止恶意操作:确保投票活动的真实性和公正性,防止刷票等恶意行为。
-数据安全:确保用户个人信息和投票数据的安全存储和传输。
三、项目计划:1.需求分析和功能设计:-进行用户需求调研,明确功能需求和用户界面设计。
-编写需求文档和功能设计文档,明确系统的整体架构和业务流程。
2.前端开发:-进行前端页面设计和编码,包括用户注册、登录、投票活动管理、投票管理等界面。
-实现用户界面和功能间的交互,确保用户体验流畅。
3.后端开发:-设计数据库结构,确保数据存储和查询的高效性。
-编写后台接口和逻辑处理模块,包括用户管理、投票活动管理、投票管理等功能的实现。
-实现和前端的数据交互和业务逻辑。
4.安全性设计与测试:-设计用户身份验证和防止恶意操作的方案,确保系统的安全性和可靠性。
-进行功能测试和安全测试,发现并修复潜在的漏洞和问题。
5.统计与展示设计与开发:-设计投票结果统计和数据可视化展示的方案,确保信息清晰和易于理解。
-开发相关功能模块,实现统计和展示的需求。
6.系统测试和部署:-进行系统整体测试,确保系统各功能模块之间的协同工作和稳定性。
长沙学院课程设计说明书题目在线投票系统系(部) 数学与计算机科学系专业(班级) 信息与计算科学(2013级1班)姓名王波学号**********指导教师刘欣、杨刚起止日期2015.12.7—2015.12.25摘要在线投票系统是本学期学习了JSP程序设计教程之后编写出来的一个基于jsp技术的小的投票网站,在这个系统中我应用了jsp技术中的servlet技术、javabean技术、以及HTMLDOM等编程相关的内容。
目录摘要.............................................................................................................................. 错误!未定义书签。
第1章设计内容与要求.............................................................................................. 错误!未定义书签。
1.1课程名称........................................................................................................... 错误!未定义书签。
1.2设计要求........................................................................................................... 错误!未定义书签。
第2章需求分析.......................................................................................................... 错误!未定义书签。
第9章投票管理系统开发一个软件首先要进行系统分析,其主要工作是确定系统的规模和范围,确定软件的总体要求以及所需要的硬件环境和支撑软件,确定待开发软件与外界的接口,根据用户的情况确定软件对操作的要求,以及待开发软件总体上的约束和限制。
系统分析有助于弄清对需开发的软件、支撑软件、硬件环境以及操作人员的要求。
本章将会详细介绍投票系统实现的过程,如系统的需求分析、系统设计和数据库设计和模块实现等。
掌握系统需求分析的过程掌握系统用例图熟练掌握系统设计过程了解数据库设计过程掌握系统时序图设计9.1 系统概述系统分析阶段的目标就是为系统设计提供系统的逻辑模型,系统设计阶段再根据这个逻辑模型进行物理方案的设计。
系统分析阶段的主要任务就是将在系统详细调查中所得到的文档资料集中在一起,对组织内部整体管理状况和信息处理过程进行分析。
系统分析在整个系统开发过程中,是要解决“做什么”的问题,把要解决哪些问小题、满足用户哪些具体的信息需求进行调查、分析清楚,从逻辑上,或者说从信息处理的功能需求上提出系统的方案。
9.1.1 需求分析投票系统主要用来统计网站用户对某个主题或热门话题的意见。
决策者通过这些统计数据做出相应的决策。
在线投票系统是一般网站必备的程序之一,网站开发者可以通过该系统了解用户对该网站的意见和建议。
该系统应具备下面相应的功能:●查看投票信息并进行投票。
投票主页显示投票的主题和选项的信息,提供所有主题的连接,用户可以选择不同的主题进行投票。
选择主题后,主页显示与主题关联的选项。
然后用户选择选项,提交表单。
投票表单包括主题、选项、投票个人信息。
主页还提供投票结果查询的连接。
●查看当前用户投票情况。
用户可以通过单击投票结果查询的连接查看投票结果。
投票结果显示主题、选项以及该选项的投票数。
用户还可以在提交投票表单后自动转到投票结果显示页面查看投票结果。
●管理员管理投票信息,包括主题、选项的添加、删除、查看。
管理员登录后台管理系统后可以管理投票信息。
管理员可以添加主题,在添加主题时需要同时添加至少一条选项。
管理员可以添加选项,添加选项必须与主题对应。
管理员可以对主题和选项进行查看和删除。
●管理员查看投票人信息。
投票人信息显示数据库存储的所有信息。
管理员可以删除投票人信息但不可以修改和添加。
实现本系统过程中,开发环境如下所示:●服务器硬件要求:处理器:Pentium 3以上;内存>=512MB;硬盘>=40G。
●服务器端软件要求:操作系统:Windows 2000或Windows XP;数据库服务器:MySQL 5.0。
●Web容器:Tomcat 6.x;●客户端软件要求:操作系统:Windows 2000或Windows XP;浏览器:Internet Explorer6.0或以上版本。
●开发工具:MyEclipse 6.09.1.2 系统用例图用例图由Ivar Jacobson在开发AXE系统中首先使用,并添加到由他所倡导的OOSE和Objectory方法中。
用例图引起了面向对象领域的极大关注,自1994年Ivar Jacobson的著作出版后,面向对象领域已广泛接纳了这一概念,并认为它是第二代面向对象技术的标志。
使用例图可以描述外部参与者所理解的系统功能,也就是说用例图描述了用例、参与者以及它们之间的关系。
1.用例图用例代表的是一个完整的功能。
UML中的用例是动作步骤的集合。
动作(action)是系统的一次执行(能够给某个角色输出结果值)。
与角色通信,或进行计算,或在系统内工作都可以称作动作。
用例应支持多种可能发生的动作。
比如,自动售货系统中当顾客付款之后,系统自动送出顾客想要的饮料,这是一个动作付款后若需要的饮料无货,则提示可否买其他货物或退款等等。
系统中的每种可执行情况就是一个动作,每个动作由许多具体步骤实现。
用例是一个完整的描述,虽然编程实现时,一个用例可以被分解为多个小用例(函数)每个小用例之间互相调用执行,一个小用例可以先执行完毕,但是该小用例执行结束并不能说这个用例执行结束。
也就是说,不管用例内部的小用例是如何通信工作的,只有最终产生了返回给角色的结果值,才能说用例执行完毕。
用例和角色之间也有连接关系,用例和角色之间的关系属于关联(association)又称作通信关联(communication association)。
这种关联表明哪种角色能与该用例通信关联。
关系是双向的一对一关系,即角色可以与用例通信,用例也可以与角色通信。
经过分析,投票系统用户用例图如图9-1所示:用户图9-1 用户管理用例图投票系统后台管理用例图如图9-2所示:管理员图9-2 后台管理用例图2。
用例说明图9-1中的各个用例,代表了系统不同的行为操作。
其详细信息如下所示:●查看投票信息:用户进入主页后查看主页显示的投票信息。
主页主要显示的信息有:主题,与主题关联的选项。
用户可以选择自己需要投票的主题。
●输入个人信息:用户确定需要投票的主题及其选项后,在个人信息输入表单输入个人信息。
该表单是用户姓名、地址、年龄的输入表单。
●投票:用户完成投票选择,个人信息输入后,进行投票操作。
系统存储用户投票的信息以及用户个人信息。
●查看投票结果:用户单击查看投票结果连接进入投票结果统计页面查看投票结果。
该统计页面只显示与投票相关信息,不显示个人等其他信息。
图9-2中的各个用例,其详细信息如下所示:●登录系统:管理员通过主页的后台系统登录表单输入用户名和密码,系统对用户名和密码验证,通过则进入后台管理系统,失败显示不存在该用户,重新登录。
后台管理系统是对投票、投票人信息、用户信息的管理平台,只允许管理员进入。
●查看投票人信息:管理员浏览投票人信息页面,系统会显示投票人信息的列表,采用分页显示。
●删除投票人信息:管理员选择需要删除的投票人信息,单击【删除】,系统删除对应的记录。
●增加主题:管理员通过主题增加表单输入主题,单击【提交】,系统插入一条相关记录。
●删除主题:该操作会显示一个列出所有主题的页面,管理员选择需要删除的主题,在这里是选择代表主题的编号,单击【删除】,系统删除对应的记录。
●查看主题:管理员浏览查看主题页面,系统显示主题的列表。
●增加选项:选择需要增加的主题编号,如果不知道,进入查看主题页面查看。
在选项输入表单输入要增加的选项。
单击【添加】,系统插入一条相关记录。
●删除选项:系统显示选项及其所属的主题,管理员选择选项的编号输入选项删除表单,单击【删除】,系统删除对应的记录。
9.1.3 系统设计本系统采用JSP、Ajax、JavaBean和Servlet等技术。
在实现本系统过程中,采用Ajax 技术实现异步数据传输和样式设置,JSP负责显示数据交互表单、模块的服务器端部分采用Servlet技术,主要实现接受客户端请求,并根据情况将信息转发给JavaBean处理,这些操作通常是数据库操作,最后返回结果到客户端。
JavaBean负责执行业务逻辑。
通过对功能需求进行分析和概括得到如图9-3所示的系统功能模块图:图9-3 系统功能模块图9.2 数据库设计在MySQL中创建数据库dbvote,并创建用户表user,投票人信息表person,投票表vote。
1.用户表user用户表user主要用来存储进入管理系统需要的信息,如用户名、密码等。
其字段的详细信息如表9-1所示:表9-1 用户结构表2.投票人信息表person主要用来存储投票人的姓名、地址、年龄信息等。
其字段的详细信息如表9-2所示:3.投票表投票表vote存储投票的主题和选项信息。
其字段的详细信息如表9-3所示:9.3 系统功能模块设计根据模块功能具体化程度的不同,可以分为逻辑模块和物理模块。
在系统逻辑模型中定义的处理功能可视为逻辑模块。
物理模块是逻辑模块的具体化,可以是一个计算机程序、子程序或若干条程序语句,也可以是人工过程的某项具体工作。
在本节中,将会详细介绍系统逻辑模块的实现过程。
9.3.1 投票模块投票模块主要包括投票和查看结果操作,涉及到Ajax、JSP、JavaBean和Servlet三项技术,其中Ajax实现客户端样式设置与异步数据传输,JSP显示投票表单、Servlet接受客户请端请求,并执行处理操作。
JavaBean主要处理获取的信息即保存信息。
该模块时序图9 -4所示:图9-4 投票时序图上图中,用户打开index.jsp 页面选择需要投票的主题,index.jsp 显示相应主题及其选项。
用户选择选项并输入个人信息,单击【提交投票】按钮,提交到NumChange 。
NumChange 获取输入信息,并调用V ote 存储获取的信息。
存储完成后跳转到show.jsp 页面显示投票统计结果。
具体功能如表9-4所示:表9-4 投票功能表9.3.2 投票管理模块投票管理模块的操作有:添加主题、删除主题、查看主题、添加选项、删除选项。
涉及到Ajax 、JSP 、JavaBean 和Servlet 三项技术,其中采用Ajax 技术实现异步数据传输和样式设置,JSP 显示数据交互表单,Servlet 用来接受客户端的请求,执行处理并返回结果。
Java Bean 主要处理获取的信息。
主题管理模块时序图如图9-5所示:图9-5 添加主题时序图上图中,管理员打开add.jsp 页面输入主题信息并提交表单,表单信息采用Ajax 技术提交到服务器端Add 进行处理。
服务器端Add 调用V ote 的insert(Vote vote )方法保存获取的信息。
保存成功后返回信息到客户端add.jsp页面,add.jsp显示执行结果。
具体功能如表9-5所示:选项管理模块时序图如图9-6所示:图9-6 删除主题时序图上图中,管理员打开del.jsp页面输入主题编号并提交表单,表单信息采用Ajax技术提交到服务器端Delete进行处理。
服务器端Delete调用V ote的del(int flag )方法根据获取的信息删除记录。
删除成功后返回信息到客户端del.jsp,del.jsp显示执行结果。
具体功能如表9-6所示:9-6 删除主题功能表表投票人信息管理模块的操作有:查看投票人信息、删除投票人信息,涉及到JSP、Java Bean技术,其中JSP显示所需信息,信息的获取和提交。
JavaBean主要处理获取的信息。
该模块时序图9-7所示:图9-7 投票人信息管理时序图上图中,管理员打开person.jsp页面,该页面显示投票人信息和删除表单,并实现删除操作。
管理员选择要删除的投票人信息,单击【删除】后person.jsp调用Perosn的del(int i d)方法按id删除记录。
具体功能如表9-7所示:9.4 模块功能实现完成了投票系统的需求分析和系统设计之后,就可以进入系统编码阶段了。