《在线问卷调查系统的分析与实现管理员功能模块毕业论文.doc》由会员分享,可在线阅读,更多相关《在线问卷调查系统的分析与实现管理员功能模块毕业论文.doc(38页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、高校经典毕业论文设计在线问卷调查系统的分析与实现管理员功能模块摘要 随着Internet的发展和人们社会生活水平的不断提高,传统的市场分析、民意调查越来越不能满足社会的需要,网上问卷调查已经在很多领域的很多方面使用,通过网上在线调查问卷收集信息已经逐渐成为了一种不可或缺的调查方式,在网络经济进一步发展的今天,建设一个高效、便利、安全的在线调查问卷系统是十分必要的,以达到实现在市场研究、民意调查以及学术研究等方面的科学应用的目标。而如今网上调查问卷的生成与分析统计的系统已经有很多种。 本系统是建立在信息技术基础上,构建出一个在线的问卷设计、分发、调查、回收、统计的系统,以提高调查的效率和安全性,
2、基本解决传统调查问卷的各种弊端。本论文通过对这一需求的详细分析和对现实生活中突出问题的研究,以及对各种技术的考虑,其中前台技术采用基于B/S模式的JAVAEE,开发工具是Eclipse,后台数据库采用Oracle,数据访问技术采用hibernate框架。本文首先介绍了问题的背景、相关技术背景,接着提出问题,并针对具体项目展开需求调查分析;再基于需求设计出具体的方案;然后对整个系统进行了详细的分析和设计,在设计与实现过程中,结合源代码具体的描述出整个项目的开发过程;最后对整个系统进行测试得出测试结论。关键词:调查问卷,JAVAEE,OracleAnalysis and Implementatio
3、n of Online Questionnaire Survey SystemAbstractWith the development of the Internet and peoples social life level unceasing enhancement, the traditional market analysis, polls cant meet the needs of the society more and more, online questionnaire has been used in many fields of many aspects, from th
4、e online questionnaire to collect information has become an essential way of investigation, in todays further development of network economy, the construction of an efficient, convenient and secure online survey system is very necessary, in order to achieve the implementation in market research, opi
5、nion polls and applications of science academic research goal. Now the generation of online questionnaire and analysis of statistical system has a lot of kinds.This system is based on information technology, build an online questionnaire design, distribution, investigation, collection, statistics sy
6、stem, in order to improve the efficiency and safety of the investigation, the basic solve all sorts of drawbacks of traditional questionnaire. In this paper, through detailed analysis of the demand and the study of outstanding problems in real life, and considering the various technologies, includin
7、g the front desk JAVAEE technology based on B/S mode, development tools is the Eclipse, background database, Oracle, data access technology USES hibernate framework.This paper first introduces the background of the problem, the related technical background, and then put forward problems, according t
8、o the specific project requirements survey analysis; Again based on the demand to design the specific plan; Then has carried on the detailed analysis and design of the whole system, in the process of design and implementation, combined with the description of the source code of the entire project de
9、velopment process; The final test test conclusion of the whole system.Keywords:Questionnaire Survey, JAVAEE, Oracle高校经典毕业论文设计目录1 绪论 11.1 在线问卷调查系统的意义 11.2 在线问卷调查系统管理员模块介绍 22 技术背景 32.1 B/S模式简介 32.2 Java语言简介 32.3 JSP简介 42.4 SSH框架简介 42.5 Oracle数据库简介53 系统分析 63.1 需求分析 64 系统设计 84.1 功能模块设计 84.2 数据库设计 84.2.1
10、 数据库设计原则 84.2.2 概念结构设计 94.2.3 逻辑结构设计 94.2.4 数据库实体表的实现 95 系统实现135.1 登录界面135.2 问卷管理145.2.1 问卷列表145.2.2 创建问卷145.2.3 更新问卷155.3 问题管理185.3.1 问题列表185.3.2 创建问题195.3.3 更新问题195.4 用户管理235.4.1 用户列表235.4.2 创建用户235.4.3 更新用户245.5 更新管理员信息276 总结297 参考文献308 致谢311 绪论1.1 在线问卷调查系统的意义 进入21世纪以来,互联网进入了高速发展的新时期。互联网已成为人们快速获取
11、、发布和传递信息的主要渠道,它在人们的政治、经济、生活等各个方面发挥着重要的作用。在Internet上发布信息主要是通过网站实现的,获取信息也得在Internet“海洋”中根据一定的检索方式把所需要的信息从网站上下载下来。由此可见,网站建设在Internet应用上的地位是显而易见的,它已成为政府、企事业单位等信息化建设中的重要组成部分,因而备受人们的重视。调查研究是社会学经常用的研究方法,可以用于描述性、解释性或探索性的研究。随着互联网在全球范围内的迅速普及,网上调查开始兴起。它的出现并不是取代传统调查方式,而是与之相辅相成,以达成最佳的调查效果。网上市场调查即在线市场调查,泛指利用互联网手段
12、所进行的各种以市场调研为目的的活动,比如收集市场信息、了解竞争者的情报、调查顾客对产品或服务的意见等,其中利用网上的在线调查问卷获得用户反馈信息是最常用的手段之一,网上市场调查也是网络营销的而基本职能之一,网上调查又是网站的基本功能之一,这种高效的调查手段也被许多调查咨询公司广泛应用,中国互联网络信息中心(CNNIC)每年两次(1月和7月中旬)所发布的中国互联网络发展状况统计报告中的大部分信息也都是通过在线调查的方式获得的,调查的内容包括用户的上网习惯、个人资料和对互联网领域的一些热点问题的看法等等,然后通过对这些调查数据的整理,形成了内容丰富的调查报告,CNNIC的在线调查已成为最有影响力的
13、网上调查之一,由此可见网上调查的重要价值1。到目前为止,我国已经有一部分企业网站具备在线调查功能,也出现了很多专业的在线调查问卷系统。网上调查的优势在于,这是一种更快更简便,而且更低价更高效的方法。传统调查方式的成本是不断上升的。当调查达到一定规模的时侯,网上调查的成本相对而言比较低廉,在成本曲线上基本没有任何上升的趋势。而且它不受时空的限制,可以24小时接受被调查者提交的问卷,并且能自动进行检验与处理,显示并能够生成直观生动的统计图形。对于敏感性的问题,网上调查方法可以使被调查者不受影响地以内心真实的态度回答,保证了问卷答案的真实性等等。它还可以在更为广泛的范围内,对更多的用户进行数据收集的
14、工作。迄今为止,已经出现了各种各样的网上调查软件,作为调查工具,至少要具备以下几个不可或缺的功能:简单易用,使用者无需了解程序代码;可以选择多种问题形式(比如列表、多选等等);提供分析工具,可以将数据导人、导出,并作处理;人们可以根据当前调查研究的需要自由选择参与调查。当然,也要考虑到研究的预算、研究人员的能力以及所要做的结果分析工作等等。虽然人们正在致力于这种正在蓬勃发展中的调查方式的研究与应用,同时也意识到在其不可比拟的优势之外,也有其不足的方面。这种方式的局限性的一面的主要表现是:网络普及率还比较低、专业人员缺乏、研究时对社会伦理道德的考虑不周等问题;另一方面,对这种调查研究方式的理论研
15、究还不够全面和深入,如样本的内在偏差性等等。1.2 在线问卷调查系统管理员模块介绍该模块分为如下功能:发布问卷:这是由网站本身根据业务需求或者其他的合作设计并发布问卷调查。管理问卷:管理员对已创建的问卷可以进行修改,删除等操作。管理用户:对网站的注册用户进行管理。查看问卷的统计信息:可以查看所有问卷的相关统计信息。2 技术背景2.1 B/S模式简介B/S(Browser/Server即浏览器和服务器)模式结构,是20世纪90年代随着Internet/Web技术的产生并开始盛行,已经成为当今最先进的一种网络结构体系,从数据库服务器的角度来看,它是从C/S(Client/Server即客户端/服务
16、器)模式发展而来,但也具有自己的特点:(1)B/S属于一种瘦客户机模式,客户端软件不需要开发,只需安装浏览器,应用界面比较单一,硬件配置要求也比较低。对已经安装Windows 系列的用户,使用内置的TCP/IP协议和IE浏览器就能够实现客户机的功能。(2)由于B/S的功能都是在Web服务器上实现,开发人员就可以集中精力解决应用层和数据层之间存在的问题,这样就大大减轻了系统开发和维护的工作量,系统管理和升级也比较方便。(3)因为客户端使用的是浏览器,所以开发者不需要为不同的用户设计不同的客户程序。更重要的是浏览器简单易用,特别适合于非计算机专业人员学习使用。(4)平台无关性是B/S模式最大的优点
17、之一,开放型的网络通信协议浏览器技术,不仅能够免费下载,而且还可以选择不同的厂商产品。由此可以看出B/S模式的网络具有三层结构:(1)浏览器属于用户界面层,用于实现用户的接口功能。在客户端,统一资源定位器(Uniform Resource Location, URL)向指定的Web服务器提出服务器请求,Web服务器用HTTP(Hyper Text Transmission Protocol,超文件传输协定)把所需文件资料传送给客户端用户,客户端接受并在WWW浏览器上显示。(2)Web服务器属于业务逻辑层,主要完成客户的应用功能,即Web服务器接受客户的请求,以ASP与数据库连接,并进行申请处理
18、,而后数据库结果返回Web服务器,并传至客户端。(3)数据库服务器即数据层,数据库服务器接受客户端用户的请求独立地进行数据处理。2.2 JAVA语言简介Java是一种简单的,跨平台的,面向对象的,分布式的,解释的,健壮的安全的,结构的中立的,可移植的,性能很优异的多线程的,动态的语言。Java是由Sun公司于1995年5月推出的Java程序设计语言(以下简称Java语言)和Java平台的总称。用Java实现的Hot Java浏览器(支持Java applet)显示了Java的魅力:跨平台、动态的Web、Internet计算。从此,Java被广泛接受并推动了Web的迅速发展,常用的浏览器现在均支
19、持Java applet。另一方面,Java技术也不断更新。 Java平台由Java虚拟机Java Virtual Machine和Java 应用编程接口Application Programming Interface(简称API)构成。Java 应用编程接口为Java应用提供了一个独立于操作系统的标准接口,可分为基本部分和扩展部分。在硬件或操作系统平台上安装一个Java平台之后,Java应用程序就可运行。现在Java平台已经嵌入了几乎所有的操作系统。这样Java程序可以只编译一次,就可以在各种系统中运行。Java应用编程接口已经从1.1x版发展到1.2版。目前常用的Java平台基于Java
20、1.4,最近版本为Java1.8。 Java分为三个体系J2SE(Java2 Standard Edition),J2EE(Java 2 Platform,Enterprise Edition),J2ME(Java 2 Micro Edition)。2.3 JSP简介JSP全名为Java Server Pages,JSP页面由HTML代码和嵌入其中的Java代码所组成。服务器在页面被客户端请求以后对这些Java代码进行处理,然后将生成的HTML页面返回给客户端的浏览器。Java Servlet是JSP的技术基础,而且大型的Web应用程序的开发需要Java Servlet和JSP配合才能完成。J
21、SP具备了Java技术的简单易用,完全的面向对象,具有平台无关性且安全可靠,主要面向因特网等特点。2.4 SSH框架简介SSH 为 struts+spring+hibernate的一个集成框架,是目前较流行的一种Web应用程序开源框架。集成SSH框架的系统从职责上分为四层:表示层、业务逻辑层、数据持久层和域模块层,以帮助开发人员在短期内搭建结构清晰、可复用性好、维护方便的Web应用程序。其中使用Struts作为系统的整体基础架构,负责MVC的分离,在Struts框架的模型部分,利用Hibernate框架对持久层提供支持,业务层用Spring支持。具体做法是:用面向对象的分析方法根据需求提出一些
22、模型,将这些模型实现为基本的Java对象,然后编写基本的DAO接口,并给出Hibernate的DAO实现,采用Hibernate架构实现的DAO类来实现Java类与数据库之间的转换和访问,最后由Spring完成业务逻辑。2.5 Oracle数据库简介ORACLE数据库系统是美国ORACLE公司(甲骨文)提供的以以高级结构化查询语言(SQL)为基础的大型关系数据库,即用方便逻辑管理的语言操纵大量有规律数据的集合。是目前最流行的客户/服务器(CLIENT/SERVER)体系结构的数据库之一,它具有稳定,安全,易用等特点。3 系统分析3.1 需求分析在线调查问卷系统说起来比较简单,被调查者填写或者选
23、择一些选项,然后点击“提交”按钮,一个在线调查问卷就完成了,但是在实际上从事网上调研的工作并不是那么轻松的,有时甚至不能顺利完成在线调查的任务,或者所得到的调查数据与实际状况有比较大的差别,因此调查结果的可信度也就大打折扣了。利用在线调查问卷系统获取信息也是最常用的网络营销功能之一,因此设计出一个功能完善的在线调查问卷网站是很迫切的。在线调查问卷系统是一个基于网络的数据采集系统,这个系统的主要目的就是通过在线问卷调查来获取大众的信息,这些信息要经过处理并且及时的存储起来。本系统支持将数据库文件导入至相关的统计分析软件进行统计分析,同时系统还要求用户能够在线编辑问卷,同时也能够跟踪问卷当前发布的
24、情况等,在被访者访问问卷时,系统能够根据被访者所做的当前题目的答案和管理员编制问卷时所定制的逻辑跳转来动态生成下一个题目,以使被访者继续顺利做答。在该系统中,管理员模块的功能大概可以概括为以下几点:发布问卷:这是由网站本身根据业务需求或者其他的合作设计并发布问卷调查。管理问卷:管理员对已创建的问卷可以进行修改,删除等操作。管理用户:对网站的注册用户进行管理。查看问卷的统计信息:可以查看所有问卷的相关统计信息。将其转化为用例图则如图3.1所示图3.1 管理员用例图4 系统设计4.1 功能模块设计管理员系统模块包括:问卷管理功能:问卷管理功能分为增加问卷、修改问卷、删除问卷、统计问卷和查询问卷五个
25、功能。管理员通过增加、修改、删除这三种功能对问卷进行更新管理;统计则可以帮助管理员对问卷的调查情况加以了解和掌握;查询功能是对问卷统计情况的查询。用户管理功能:管理员对用户的管理包括用户资料的管理和用户权限的管理用户资料的管理主要实现删除用户、修改用户密码和查询用户资料功能。而用户权限的管理只有高级管理员可以使用,所以首先要判断管理员权限,在存在高级管理员权限的情况下才能使用此功能对用户进行授权及撤消权限。管理员权限分为一般管理员和高级管理员,虽然高级管理员的权限高于一般管理员,但是他所能使用的功能只比一般管理员多了一项权限管理功能。所以并不需要将一般管理员和高级管理员的功能分为两个模块,只需
26、要在使用权限管理这个功能时来判断管理员的权限即可。个人信息管理功能:管理员可对自己的信息进行修改。4.2 数据库设计根据已确定的系统总体的功能结构,全面分析所需要的所有数据对象及其存取方案和结构,进行数据库设计。数据库的设计是指对一个给定的应用环境,构造数据库模式,建立数据库及其应用系统,满足各种用户需求。数据库设计是在线调查问卷系统设计中的一个重要组成部分,而数据库表的设计在遵循数据库理论的同时,必须能用开发工具来实现用户在各方面提出的功能要求。4.2.1数据库设计原则:(1)进行规范化设计,尽可能的减少数据冗余和重复合理的数据库表的设计应该是在满足系统需求的前提下,使数据的重复量尽量最小,
27、按照关系数据库系统理论方法去设计数据库,减少数据的冗余。(2)结构设计和操作设计相结合在设计数据库结构时,有时为了实现编程的简捷和思路的清晰,往往会故意增加一些冗余数据。这虽然有违传统的关系数据库理论,但是考虑到如果增加的冗余不会明显增加存储空间和降低处理效率,并且对编程实现有很大帮助,往往可以采用这种方法。(3)数据结构具有相对的稳定性无论采用哪种方法或手段处理日常事务,都能完够成相应的功能,决不能因为采用了某种方法而丢失了必要的功能,或者彻底改变原有的工作流程和模式。4.2.2 概念结构设计把系统的应用需求抽象化为信息结构的过程就是概念结构设计,这是整个数据库设计的关键环节,通过对系统需求
28、进行综合、归纳和抽象,构成一个独立于具体的DBMS的概念模型。这即是从现实世界到信息世界的第一层抽象,是对现实世界的抽象和概括,也是数据库设计人员用以和用户交流的语言,同时也为向关系、层次、网络等逻辑数据模型的转化奠定了基础。对于概念结构的设计,系统采用最为著名也最为常用的实体联系方法,即E-R模型,E-R模型是一个面向问题型的概念模型,用简单的图形方式来描述现实世界的数据,它不涉及数据在数据库中的表示和存取方法,而非常接近人的思维方式。有关实体包括:管理员,用户,问卷,问题,选项。4.2.3 逻辑结构设计概念结构设计即将系统的应用需求抽象化为概念结构,逻辑结构设计是在概念结构设计的基础上,把
29、概念结构转化为逻辑结构,也就是把概念结构设计阶段已经设计好的E-R模型转化为与所选用的DBMS产品所支持的数据模型相符合的逻辑结构,这种转化遵循“一个实体型转化为一个关系模式”的原则,实体的属性也就是关系的属性,在实体的联系中,一个1:1联系、1:n联系可转化为一个独立的关系模式。把系统的E-R模型转换为以下关系模型:管理员表(编号,用户名,密码,真实姓名,电子邮件地址,电话号码,创建时间)用户表(编号,用户名,密码,真实姓名,性别,年龄,职业,收入情况,所在地,电子邮件地址,电话号码,创建时间,最近登录时间)问卷表(编号,问卷题目,备注描述,参与人数,创建时间)问题表(编号,问题题目,问卷编
30、号,问题类型,参与人数,创建时间)选项表(编号,选项名,问题编号,选择人数,创建时间)4.2.4数据库实体表的实现在Oracle数据库中建立名为OQSS的数据库。为了防止应用过程中数据的更新异常并保证减少数据冗余以及避免插入和删除异常等情况,在数据库的设计过程中要对数据库中的各个表进行规范化,本系统的数据库表符合第三范式的要求。其中包括以下主要数据表:表4.1 管理员表序号列名(中文)列名(英文)类型字段长度主键允许为空默认值1编号idint7y2用户名nameVarchar2203密码passwordVarchar2204真实姓名Real_nameVarchar220y5邮件地址Email_
31、addressVarchar2506电话号码Phone_numberVarchar2207创建时间Create_datedate系统时间表4.2 问卷表序号列名(中文)列名(英文)类型字段长度主键允许为空默认值1编号idint10y2问卷名nameVarchar23003问卷描述descriptionVarchar21000y4参与人数People_numberint1005创建时间Create_datedate50系统时间表4.3 问题表序号列名(中文)列名(英文)类型字段长度主键允许为空默认值1编号idint10y2问题名nameVarchar23003问卷编号Questionnaire_
32、idint104参与人数People_numberint1005创建时间Create_datedate50系统时间表4.4 选项表序号列名(中文)列名(英文)类型字段长度主键允许为空默认值1编号idint10y2选项名nameVarchar23003问题编号Question_idint104参与人数People_numberint1005创建时间Create_datedate50系统时间表4.5 用户表序号列名(中文)列名(英文)类型字段长度主键允许为空默认值1编号idint7y2用户名nameVarchar2203密码passwordVarchar2204真实姓名Real_nameVarch
33、ar220y5性别genderVarchar216年龄ageint37职业professionVarchar21008收入情况incomeint109所在地homeVarchar210010邮箱地址Email_addressVarchar25011电话号码Phone_numberVarchar22012创建时间Create_datedate系统时间13最近登录时间Last_login_datedate系统时间5 系统实现5.1 登录界面管理员通过用户名和密码登陆该在线问卷调查系统的管理员相关页面,当管理员点击登陆按钮后,系统会对该管理员的输入进行相关验证,如果通过会到数据库查询判断该管理员是否
34、有权登陆。登录界面如图5.1所示。图5.1 登录界面实现代码: public Administrator login(String name, String password) throws ServiceException Administrator administrator = null; try administrator = this.administratorDao.selectByName(name); catch (DaoException e) throw new ServiceException(系统异常,登陆失败, e); if (null != administrato
35、r & password.equals(administrator.getPassword() return administrator; else return null; 5.2 问卷管理管理员对问卷的管理主要包括,问卷列表,创建问卷,编辑问卷,删除问卷。查看问卷的列表时,可以通过搜索问卷名快速找到相应的问卷,列表页面的分页通过AJAX异步刷新技术实现,可以快速翻页,此外,在列表页面点击每条问卷记录的删除选项,可以快速完成问卷的删除操作。5.2.1 问卷列表图5.2 问卷列表5.2.2 创建问卷图5.3 创建问卷5.2.3 编辑问卷图5.4 创建问卷实现代码:private IQuesti
36、onDao questionDao; public void setQuestionDao(IQuestionDao questionDao) this.questionDao = questionDao; Override public PageResult getListByQuestionnaireID(PageParameter pageParameter, int questionnaireID) throws ServiceException List questionList = null; int recordSum = 0; int pageSum = 0; try ques
37、tionList = questionDao.selectListByQuestionnaireID(pageParameter, questionnaireID); recordSum = questionDao.selectSum(pageParameter.getSearch(), questionnaireID); catch (DaoException e) throw new ServiceException(系统异常,获取问题列表失败, e); pageSum = (recordSum - 1) / pageParameter.getRecordCount() + 1; PageResult pageResult = new PageResult(); pageResult.setList(questionList); pageResult.setPageSum(pageSum); pageResult.setRecordSum(recordSum); return pageResult; Override public PageResult deleteByID(int id, PageParameter pageParameter, int ques
限制150内