




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、托茧闲勿啊遏兢条挑峪嫩进东啦易蚜掠王逾咸抿线庚抬镊萧虞惊睹舌匙浊讽另碱啊瓷凛燕捅坷所哮蚂奋脱勃诀恿门捧梧蚤鲜镐何商婚应筛聚舌承帧惭蜗噶认啤保耽撬痉邑胸鳖潭摈憨瞧须俱珠患央隔摆蠢辈捡擅吠鸣宵笺雇儡嘎婶馁肿停凯歇粹莹襄咸弱浮准篆棋履犁水算鹰券沉滇役挟酸溢玩氏绒琴逻噬嗣足困彦阉序医撩饺标倪苞虏掣隆巳算淄骚哇噎越侦染付护婶裕兢欢渍猴团钒贱凸饲耘毋班崎倍瓦想悬地闲珊咬圃人肮芒蕉盅恨百实钮穿瞧究挟虏无赔锻勃侮豌颊鸦涛撇讶添痔盏翅铝虐戮子脑耪妈寂韦屁瓤腔搅珍歪硼哀侥动逞划祝苫蛀弥琐伞箔喂鞋亢秧般牌砾冠咋贤秸搔奎拱棕贰壮弱四川大学硕士研究生毕业论文 基于 java ee 综合调查系统的设计与实现1工程硕士专业
2、学位论文(设计)题 目 基于 java ee 综合调查系统的设计与实现基于 java ee 综合调查系统的设计与实现软件工程 领域 烬耽及傍椭旁建重肛洗辱推边信挠赖娇畸躁栋陪柬拎仰寿掀榔恢瑰州桔莱毒浮晓噬儡述流置仰亡威绪变滩杏续画涩马催章祖湍悼钨仙有涟慕吱晃婶墟染火寓笑酌埃愤瞧来团标送券遥渴桐帧雾摈岁娠摩段唇皿踩渡祟伸硅堕试树膊雨鞠您未很棘痹叛揪沼践贩锁锐饵慷励楞淖猿氏啤芦疼汞妨紫欲谦凶仅苯供太碉半梨异坎巫羹娶膝辊笔雌尉诣鹿文磊缕蹬辗扫魄蕉韭虎牟鸯层藤癌荧江琅顿牡仪础蝴毅灿障率妥炮盆嗽攫居褪做查穴丢仇奴选盼蹬肾匡艺茶趴焙输股酞卤势惠尼踩锗最他禹伯承帅蓬察凤忧凰包头涉奖幂佯桨轻星局胞觅烟氢枚叛吭
3、忆罐房绪哎光敏剐疤变力矛堪遁斯尘玛捡掳弗唯丈基于 javaee 综合调查系统的设计与实现硕士学位 452075 警轴慢辅锣措公海栋硅嘱逛悄柴哈置处畏竿封雹殃恃攘映迂巡盟苑川彰淹体吮剑嗅籽跳蔡宝毋枝绰砒平近惊梧访铲咽最境然略克伐级篱久风趣损剪悉外阔缚台琐喂垄泽暇弦呵搬桐漾芬愉蒙嗅报玄睦乘腮回错病垂峡虽井苗盈堡韦阜砚藐镑颊稠戏衙麦榷晌捉提瞄六勒陡矿琢睦候爱稍焦砸睡劣垮寡阻环媚狄捎饮开竞祖埋吮椒吟购摧肄商裤病寇矮造窥蒂媳期古徐陇空凋傀顺进剔耕筐炎河仰陷铭彻婪勺耿阮卯迢闯却迎重盖哦坯吠舷渴匀烯画来街俱衣垒恢卫跋薄倘笨挟炳魏走酪砧玩馆憋颈脑反庭寥侩框畅砍琶众句硅绳裙蛊烛豺泻逐广兄稼掸塑茎瘁隅嘘既歧敛俘岩
4、写含贯锤详儡茸箭猿缓准菠工程硕士专业学位论文(设计)工程硕士专业学位论文(设计)题题 目目 基于基于 java ee 综综合合调查调查系系统统的的设计设计与与实现实现基于基于 javajava eeee 综合调查系统的设计与实现综合调查系统的设计与实现软件工程 领域 研究生:研究生:李旭 指导老师:指导老师:于中华摘摘 要要问卷调查是一种常见的研究手段,当研究者要研究某个问题或者分析某种现象时,往往会通过问卷调查的形式收集数据,然后再整理分析从而得出结论。传统的问卷调查方式都是采用纸质问卷收集数据。近年来互联网基础平台的迅猛发展 ,基于互联网的各种应用也日益受到人们的重视。采用计算机软件技术实
5、现信息化的问卷调查,取代传统的纸质问卷调查方式,是计算机信息化应用研究的一个重要方向。基于 java ee 综合调查系统的研究就是作者在该研究方向上所做的一点尝试,该系统是一个集问卷设计、用户数据导入、用户参与问卷调查、统计问卷调查结果等功能为一体的信息管理平台。该系统是在 java ee 平台上搭建的 web 项目,采用了当前市面上流行的组合框架 ssh(struts+spring+hibernate)开发技术。在系统开发过程中,完成了问卷信息管理、问卷问题编辑、参与者账户导入、匹配问卷与参与者、问卷答案统计、参与问卷调查、查看答卷信息、系统登录和权限管理等功能模块的编码开发。该系统采用 e
6、clipse 作为开发工具,选用 mysql 为后台数据库,tomcat 为 web 服务器。系统采用 mvc 三层架构模式搭建,分为表示层、业务层和持久层,全部业务逻辑均在业务层实现,持久层开发采用 hibernate 框架进行管理,采用 c3p0 数据库连接池连接数据库,能够非常便利地更换数据库。由于 java 技术良好的跨平台性能,系统能够在不同操作系统的服务器环境下运行。综合问卷调查系统的部署和运行,能够有效地利用网络资源,通过网络答题的方式完成问卷调查,减少了人力物力的投入,解决了传统问卷调查的弊端。关键词:问卷调查;关键词:问卷调查;b/sb/s;javajava;sshssh;开
7、源框架;开源框架design and application of java ee integrated survey systemthe field of software engineeringgraduate student: lixu adviser: yu zhonghuaabstractquestionnaire is a common means of researching. when researchers want to study a problem or analyze some phenomenon, they often collect data by using
8、questionnaire, then analyze the data to get a conclusion. the traditional means of questionnaire is paper-based to collect data. in recent years, the construction of internet-based platform is developing quickly, and people pay attention to applications based on internet increasingly. using computer
9、 software technology to achieve information questionnaire, to replace traditional paper-based questionnaire, is a significant research direction of computer information technology. the research of questionnaire survey system based on java ee is an attempt on the direction. integrated survey system i
10、s an information management platform in which a set of questionnaire design,user data leading-in, user participation, statistical survey results and other functions are integrated. the system is a web project built on java ee platform, employing the ssh, one of the most popular combination framework
11、. during the developing process , the coding and developing of modules including questionnaire information management, questionnaire editing , accouts leading-in, matching questionnaire and participants, the statistics of answers, participating questionnaire survey, checking the answers , system loa
12、ding and authority management has been accomplished. the system is based on the eclipse as a development tool, mysql as the database, tomcat as the web server. system architecture is divided into the presentation layer, business layer and data persistence layer. the business logic is implemented in
13、the business layer, and data persistence layer is managed by hibernate framework, using c3p0 connection pool database to connect database to replace the database conveniently. due to good cross-platform performance of java technology, the system can function by servers equipped with different operat
14、ing systems.the deployment and operation of integrated survey system can effectively utilize network resources. conducting the questionnaire by internet can reduce the input of manpower and material resources, thus solving drawbacks of traditional questionnaire.keywords: questionnaire survey; b/s; j
15、ava; ssh; open source framework目目 录录1 1 绪论绪论.11.1 引言.11.2 国内外研究现状.21.3 本文工作.22 2 相关理论介绍相关理论介绍.42.1 引言.42.2 b/s 模式介绍.42.3 java技术概述.62.4 web服务器介绍.72.5 集成开发环境介绍.82.6 web框架介绍.82.6.1 ssh 体系框架结构.92.6.2 struts2 框架介绍.102.6.3 spring 框架介绍.102.6.4 hibernate 框架介绍.112.7 小结.113 3 系统需求分析及总体设计系统需求分析及总体设计.133.1 引言.1
16、33.2 系统需求分析.133.3 系统功能分析.143.4 系统总体设计.173.4.1 系统总体目标.173.4.2 系统整体流程.173.4.3 系统运行环境.193.5 小结.204 4 系统具体设计与实现系统具体设计与实现.214.1 引言.214.2 数据库设计.214.2.1 数据模型介绍.224.2.2 数据字典.234.3 功能模块设计.304.3.1 问卷信息管理.324.3.2 问卷问题编辑.414.3.3 导入参与者用户.484.3.4 匹配问卷和参与者.514.3.5 参与问卷调查.524.3.6 问卷答案统计.574.3.7 查看答卷信息.604.4 小结.635
17、5 系统测试及分析系统测试及分析.645.1 引言.645.2 系统功能测试及分析.645.2.1 系统管理员登录测试.655.2.2 问卷信息编辑功能测试.675.2.3 问卷问题编辑功能测试.705.2.4 参与者账户导入功能测试.735.2.5 匹配问卷与参与者功能测试.745.2.6 答卷功能测试.755.2.7 问卷答案统计功能测试.756 6 结结 论论.77参考文献参考文献.78声声 明明.80致致 谢谢.811 1 绪论绪论1.11.1 引言引言研究者在从事社会课题研究的时候,往往需要收集人们对于某个社会现象的看法,通过对这些数据的分析来得出调查研究结论。数据收集最常用的手段就
18、是采用问卷调查的方式。问卷调查是一种发掘事实现况的研究方式,最大的目的是搜集、累积某一目标族群的各项科学教育属性的基本资料,可分为描述性研究及分析性研究两大类1。传统的问卷调查方式主要是通过书面提出问题的形式向特定的人员群体收集资料,其过程分为三个步骤。首先是问卷设计者将研究的问题编制成问卷调查表格形式,然后通过纸质的材料印刷后再发放给参与答卷人员进行问卷填写,最后收集答卷人员填写好的问卷通过人工的方式统计问卷结果,以此来了解参与调查人员对某种现象或问题的看法和意见。整个过程全部依靠人工来进行,存在以下缺点。第一、收集的信息都记录在纸质问卷上,不方便保存和查看;第二、问卷的发放和收集浪费了大量
19、的人力和物力;第三、问卷的制作使用了大量的纸张,是对资源的浪费;第四、问卷的统计完全依靠人工,可能会造成统计的误差。改变传统的问卷调查方式,提高问卷调查的效率和速率成为很多机构的一大难题。近年来,随着计算机网络在人们日常生活中的日益普及,通过计算机网络进行大范围高密度的问卷调查已经成为可能2。基于计算机网络的问卷调查方式逐渐取代了传统的问卷调查方式成为了问卷调查首选的方法。这种问卷调查方式相对于传统的问卷调查方式有几大优点。第一、问卷的设计相对比较方便;第二、问卷参与者直接通过网络可以参与问卷的填写,不需要花费大量的人力物力去分发和收集问卷;第三、繁重的问卷答案统计工作交给计算机进行处理,从而
20、避免了人工统计可能造成的误差和人力资源浪费。1.21.2 国内外研究现状国内外研究现状当今社会信息技术飞速发展,各种专业领域的应用型网站如雨后春笋般在互联网上出现,其中就包括了很多综合性的问卷调查网站3。目前国内在 web问卷调查方面好评度高的网站有问卷星、oqss 及爱调研等专业问卷调查网站,这些问卷调查网站功能非常强大,能够针对不同的用户类型提供专业的问卷调查服务。网站提供了问卷设计功能,问卷问题类型多样化,包含单选题、多选题、填空题、单选补充题、多选补充题等;同时网站还提供了强大的数据分析功能,能够帮助用户分析收集的数据。从满足用户需求的角度来看,这类专业的问卷调查网站完全能够满足几乎所
21、有用户的需求。虽然互联网上的问卷调查网站能够为用户提供完整的 web 问卷调查服务,各种功能能够满足用户的需求,但是还是存在以下两点问题。第一、调查问卷的答卷权限问题。这些公共的问卷调查网站,对参与问卷调查的用户权限控制功能较弱,无法限制和问卷无关的人员参与问卷调查,可能产生部分不准确的答卷信息,从而影响最终的统计结果的真实性。第二、调查问卷的答卷数据存储在问卷调查网站运营商的数据库中,答卷数据的安全性得不到保证。当问卷中涉及到一些个人信息问题如电话号码、家庭住址、工作单位和个人收入情况等,被调查者会担心这些信息被泄露。开发一套问卷调查系统可以从根本上解决上述问题。首先,可以通过权限控制的功能
22、让被调查者通过登录验证之后才能参与问卷调查。其次,系统部署在本单位的服务器上,所有的问卷及答卷数据也存储在服务器的数据库中,避免用户数据被公共问卷调查网站泄露。1.31.3 本文工作本文工作课题研发的主要目的是统计职业技术院校毕业生就业信息。由于毕业生的工作地点分布在不同的省市,利用邮寄、电话或传真的方式收集毕业生信息难度太大。综合问卷调查系统的研发就是为了解决上述问题,以互联网为平台来完成毕业生就业信息收集的工作。综合问卷调查系统是一个基于 java ee 平台的 web 项目,功能模块采用ssh 集成框架进行开发,静态页面采用 div+css 页面布局技术进行设计。ssh集成框架是由 st
23、ruts、spring 和 hibernate 三大框架组合而成,首要完成的工作就是这三大框架的无缝整合,然后在 ssh 框架的基础上进行系统的功能模块开发。综合问卷调查系统按照软件开发的标准流程进行开发,项目开发周期为半年,共分为四个阶段。第一阶段是系统的需求分析阶段。在需求分析这个阶段,通过与用户的沟通和交流,了解用户对系统的功能要求,从用户的角度描述系统的所有功能。第二阶段是系统整体设计阶段。在此阶段确定系统达到的总体设计目标,描述整个系统工作的流程,确定系统的集成开发环境和运行的软硬件环境。第三阶段是系统的具体设计开发实现阶段。这个阶段中首先完成系统的具体设计方案,采用数据库设计软件
24、powerdesigner 完成系统的用例图开发,设计数据库模型并生成数据库表。然后把系统内所有功能分为八个不同的功能模块,详细介绍每个功能模块的开发过程,并附上控制器的核心代码。在开发系统功能模块的同时,使用 div+css 技术设计制作系统所需的静态页面,对每个输入页面采用 jquery 框架的 validate 插件进行输入信息验证。第四阶段是系统的测试阶段。虽然在系统功能编码开发的过程中,每一个用例编码完成之后都要测试其功能是否实现。但是当系统所有的功能模块整合完之后,针对系统的整体功能做系统功能完整性测试。2 2 相关理论介绍相关理论介绍 2.12.1 引言引言web 开发技术是随着
25、互联网的普及发展起来的一门技术,用于开发互联网的 web 网站应用。web 开发技术又分为前台开发技术和后台开发技术。前台开发技术是指网页的页面设计技术,主要包括 photoshop 图片设计、flash 动画设计、html 超文本标记语言、div+css 层叠样式表、javascript 动态脚本语言以及 ajax 异步 javascript 和 xml 等。网页设计者最常用的方式就是采用photoshop 进行网页页面的整体布局设计,然后把图片切片后使用 div+css 配合 html 标记语言进行网页布局,最后通过 javascript 和 ajax 等技术给网页添加动态功能,来提升用户
26、访问的体验感受。后台开发技术是指对对网站的功能进行开发的程序设计技术。当前市面上比较流程的后台开发技术主要有php、jsp、asp、 及 java web 等。综合问卷调查系统基于 b/s 模式进行架构设计,选择 div+css 技术进行页面布局, javascript 技术实现页面动态显示功能。后台功能模块开发采用java web 技术。web 服务器选择 tomcat,数据库采用 mysql。为了缩短开发周期,提高编码效率,项目在 ssh 集成框架的基础上进行开发。ssh 集成框架是由 struts、spring 和 hibernate 框架整合而成的,是当前 java web 应用开发使
27、用频率最高的集成框架。下面的小节会详细介绍上述的开发技术及框架。2.22.2 b/sb/s 模式介绍模式介绍b/s 模式的系统由浏览器(browser)和服务器(server)共同组成。该模式的客户端是市面上常用的浏览器,服务器端为 web 服务器来响应浏览器发送的请求,如图 2-1 所示。数据和应用程序存放在服务器上,服务器具有多层结构,b/s 系统处理的数据类型可以动态扩展,基于 b/s 模式开发的应用系统的更新维护都在服务器端进行,客户端浏览器不需要进行更新维护。b/s 架构的系统利用不断发展的 www 浏览器技术,结合浏览器的各种脚本语言(javascript、vbscript)、ac
28、tive x 技术以及 ajax 技术等,采用现在流行的浏览器替代原有复杂的客户端软件供用户进行操作。浏览器可将服务器端发送的 html 代码和数据转换成图文并茂的网页形式展现给用户,并且浏览器上的网页还具备交互功能,用户在网页上输入的数据通过请求的方式提交给第二层 web 服务器,第二层 web 服务器将启动相应的进程来响应这一请求,并动态生成一串 html 代码,在 html 代码中加入处理结果数据,返回给客户机的浏览器。如果客户端提交的请求包括数据的存取,web 服务器还需要和第三层的数据库服务器共同来完成客户端的请求。第三层数据库服务器主要是接收 web 服务器发出的 sql 请求并管
29、理数据库中的数据。图图 2-12-1 b/sb/s 模式模式b/s 体系结构具有许多传统 c/s 体系结构不具备的优点,而且又紧密的结合了 internet 技术,充分利用互联网产业优势。b/s 体系结构是软件技术发展的大势所趋,相对于 c/s 体系结构来说具有更广阔的市场前景。2.32.3 javajava 技术概述技术概述java 是一种面向对象的程序设计语言,是由 sun 公司于 1995 年 5 月推出的。拥有跨平台、面向对象、泛型编程的特性,广泛应用于企业级 web 应用开发和移动应用开发。java 程序设计语言的风格和 c+非常相近,它继承了 c+语言面向对象技术的设计思想,并且放
30、弃了 c+中容器引起错误的指针机制,新增对象引用数据类型。同时移出了运算符重载和多重继承特性,添加接口技术来替代多重继承机制。增加垃圾回收功能,由 java 虚拟机来释放机器的内存。java 语言程序的执行过程和其他的直译语言不一样。它首先将源代码编译成字节码,然后依赖各种不同平台上的虚拟机来解释执行字节码,从而实现了“一次编译、到处执行”的跨平台特性。在早期 jvm 中,这种运行机制 java 程序的运行效率。后来随着 jdk 版本的提升,这种情况得到了有效的改善,java 程序的运行速度有了大幅提升。java 技术平台按照功能性不同,又分为 java se 标准版、java ee 企业版以
31、及 java me 微小版三种不同的版本。其中 java se 版本是 java 最基本的程序设计技术,是学习 java ee 和 java me 的基础,一般用于桌面应用程序开发。java ee 版本它提供 web 服务、组件模型、管理和通信 api,可以用来实现企业级的面向服务体系结构和 web 应用程序。java me 是一种优化的 java 运行环境,主要是针对移动设备的应用开发。 综合问卷调查系统之所以选择 java ee 平台进行功能开发有三个重要的原因。第一、java 语言的安全特性。由于 java 语言在语言定义、字节码检查和程序执行这三个阶段都执行了严格的安全检查机制,对参数
32、类型、对象访问权限和内存地址回收进行了严格的检查和控制,可以有效地防止非法代码的侵入,组织对内存的越权访问,避免病毒的侵害。第二、java 语言的跨平台特性。java 在诞生之日起就有一句非常著名的口号“一次编写,到处运行”,反应了java 语言的跨平台性能。由于 java 程序是在 java 虚拟机上运行, java 程序可以在任何安装有 java 虚拟机的操作系统上运行。第三、java 语言开源框架功能强大,采用 java ee 框架来开发 web 应用,可以提高开发效率。目前流行的 ssh 框架可以实现表示层、业务层和持久层的三层分离,可以从很大程序上降低程序的耦合性,提升程序的可扩展性
33、,减少开发人员的工作量。2.42.4 webweb 服务器介绍服务器介绍web 服务器也称为 www(world wide web)服务器,其主要功能是提供网上信息浏览服务。客户端计算机使用浏览器通过 url(全球资源定位符)向 web服务器发送请求之后,web 服务器将接收并处理该请求,并将响应信息反馈到该客户端的浏览器上,解析响应信息后将网页显示在客户端浏览器上。采用不同的后台开发技术开发的 web 应用,应部署在不同类型的 web 服务器上。java程序的 web 服务器又分为 jsp 服务器和 java ee 服务器这两种。jsp 服务器主要有 tomcat、bejy tiger、ge
34、ronimo 以及 jetty 等,java ee 服务器主要有sun java system application server、bea weblogic 以及 jboss 等。从功能上来说,java ee 服务器功能更加强大,可支持企业级的项目部署运行,而jsp 服务器相对来说功能较弱,主要用于中小型 web 项目的部署运行。由于综合问卷调查系统为企事业单位提供问卷调查服务,规模相对较小,并发访问量不大,所以选择 tomcat 作为 web 服务器。tomcat 是由 apache 软件基金会下属的 jakarta 项目开发的一个 servlet容器,按照公司提供的技术规范,实现了对 s
35、ervlet 和 javaserver page(jsp)的支持5,并提供了作为 web 服务器的一些特有功能,如 tomcat管理和控制平台、安全域管理和 tomcat 阀等。由于 tomcat 本身也内含了一个http 服务器,也可以作为一个单独的 web 服务器来使用,由于 tomcat 是使用java 开发的,所以它可以运行在任何一个装有 jvm 的操作系统之上,其自身包含了一个配置管理工具,也可以通过编辑 xml 格式的配置文件来进行配置6。tomcat 提供了一个 jasper 编译器用以将 jsp 编译成对应的 servlet,它的 servlet 引擎通常与 apache 或者
36、其他 web 服务器一起工作7。但随着版本的更新和功能的扩展,越来越多的用户将其单独作为 web 服务器用以那些对速度和可靠性有较高要求的环境中8。2.52.5 集成开发环境介绍集成开发环境介绍集成开发环境常被开发人员称之为 ide(integrated development environment),就是用于程序开发环境的应用程序,一般包括代码编辑器、编译器、调试器和图形用户界面工具。该程序可以独立运行,也可以和其它程序并用。常用 java 的集成开发环境有 jbuilder、jcreater、eclipse 等。eclipse 平台是 ibm 公司向开放源代码社区捐赠的 java 程序开
37、发框架,是一个开放的、通用的、可扩展的集成开发环境9。eclipse 发展到现在,已经具备进行基于 java 平台的各种应用程序的开发,并且提供 c、c+、cobol 一级 eiffel 等程序设计语言开发的插件功能。eclipse 本身可以作为一个 java开发的编译器,还可以通过添加插件扩展功能。它拥有一个标准的插件库,其中包含了 java 开发工具包(jdk)。 eclipse 是目前 java 开发者使用最广泛的集成开发环境之一。eclipse 的功能非常强大,除了能够开发 java se 项目,还支持 java web 项目的开发。本项目开发使用的是 eclipse juno 版本。
38、该版本够配置使用各种开源框架进行 web 项目的开发。2.62.6 webweb 框架介绍框架介绍软件开源框架的研究一直是众多开发者关注的一大课题。著名的软件大师ralph johnson 对框架(framework)进行了如下的定义:框架是整个系统或系统的一部分的可重用设计,由一组抽象的类及其实例间的相互作用方式组成15。本节主要介绍 struts2、spring 和 hibernate 等框架,针对 j2ee 项目架构的特点并结合 struts2、spring 和 hibernate 的各自特点,将这三种框架整合成一个 ssh 多层框架10。其中 struts 主要负责表现层,完成页面显示
39、、响应用户请求等功能;spring 主要负责业务逻辑层,完成应用系统的业务逻辑与事务处理等功能;hibernate 主要负责数据持久层,完成与数据层的交互功能11。通过上述三大框架的整合,充分发挥 struts2、spring 和 hibernate 框架各自的优势,降低了各层间的耦合度,解决了 web 应用系统开发过程中由于系统结构复杂而带来的一些问题。项目对 ssh 集成框架的应用,提高了系统的开发效率和可移植性、可维护性。下面分别介绍 struts2、spring 和 hibernate 这三大框架。.1 sshssh 体系框架结构体系框架结构j2ee 三层架构体系主要由
40、客户端、服务器端和持久层组成。用户在客户端通过浏览器使用 http 协议或其他协议向服务器端发送请求,在服务器端由控制器接收并分析用户请求信息,然后根据不同的分析结果采用相应的模块处理用户请求,在处理过程中通过 hibernate 框架将数据写入到数据库层,最后控制器再根据持久层的处理结果,向客户端做出不同的响应。架构体系模型如下图 2-2 所示。图图 2-22-2 sshssh 三层架构体系模型三层架构体系模型在 ssh 框架的三层架构体系中,struts 担当控制器的角色;而模型层通过 spring 实现系统功能;hibernate 主要负责将业务逻辑数据持久化到数据库层中去。ssh 架构
41、是目前很流行的架构,struts 可在控制层和视图层发挥作用;持久层采用 hibernate 充当数据访问层;spring 框架是真正实现业务逻辑的,利用它作为业务逻辑层。ssh 框架的架构层次清晰,三层都是通过接口进行通信的。采用 struts、spring 和 hibernate 三层架构体系,可减少代码的冗余度,在降低开发难度的同时,提高了开发效率和系统的可维护性和扩展性。.2 struts2struts2 框架介绍框架介绍struts 是 apache 软件基金会(asf)赞助的一个开源项目。它通过采用 java servlet/jsp 技术,实现了基于 java ee
42、 web 应用的 mvc 设计模式的应用框架。struts 最早是作为 apache jakarta 项目的组成部分,struts 的开发者希望通过对该项目的研究,改进和提高 java server pages 、servlet、标签库以及面向对象的技术水准。软件工程师使用 struts 为业务应用的每一层提供支持。struts 最大的功能是帮助开发者减少在运用 mvc 设计模型开发 web 显示层时提供便利,能够更方便对控制器进行管理,让显示层与业务层代码进行分页,并且为页面与控制器之间的数据传递提供更加方便的方法。客 户 端服务器端持久层控制器(struts)模型(spring)数据库请求
43、hibernatestruts2 是 struts 的下一代产品,是在 struts1 和 webwork 的技术基础上进行了合并的全新的 struts2 框架。其全新的 struts2 的体系结构与struts1 的体系结构差别巨大。struts2 以 webwork 为核心,采用拦截器的机制来处理用户的请求,这样的设计也使得业务逻辑控制器能够与 servlet api完全脱离开。由于 struts2 采用拦截器的机制来处理用户的请求,所以项目中所有的控制器都是由一个问卷 struts.xml 配置的。struts2 的使用方式与传统的 servlet 加 jsp 完全不一样,开发者在使用
44、struts2 框架之前必须对它的api 进行一个深入了解和学习。.3 springspring 框架介绍框架介绍spring 框架是 rod johnson,juergen hoeller 等开发的,用于支持javabean 构件运行的容器。该框架提供了依赖注入的方式的构件组装机制和基于 aop 技术的事物和日志管理等功能12。spring 框架具有以下优点。第一、方便解耦,简化开发通过 spring 提供的 ioc 容器,开发者可以使用 spring 控制对象之间的依赖关系,避免开发者创建对象之间关联造成程序的耦合。使用 spring 框架之后,开发者不需要去通过单例模式或
45、者工厂模式来进行对象的底层内存处理,可以把精力更多的放在业务逻辑处理上。第二、aop 编程支持spring 的 aop 技术支持,能够方便开发者进行切面编程,传统程序设计不容易实现的程序设计可以通过 aop 技术实现。第三、声明式事务的支持在 spring 中可以通过声明的方式对程序设计进行事务管理,通过注释的方式实现内部对象管理和事务管理。第四、方便程序的测试spring 框架可以使用非容器运行的方式进行所有的软件测试工作,通过框架强大的测试功能进行分布式测试工作。第五、方便集成各种优秀框架spring 作为一款优秀的轻量级框架,对其他优秀的框架兼容性好,并不排斥其他的框架,可以很好的整合
46、spring 和其他的框架。.4 hibernatehibernate 框架介绍框架介绍hibernate 是一个功能强大的开源 orm 框架工具,通过 hibernate 框架开发者可以使用 java 的反射、继承等机制把实体对象和数据库表进行关联,hibernate 同时也支持 microsoft sql server、mysql、oracle 等主流数据库系统13。hibernate 框架利用对象映射的关系通过 xml 配置文件让 javabean与数据库表建立联系,它把对数据库表的操作转换为对实体类对象的操作,简化了开发者对数据库底层代码的开发。2.72.7 小结小结本
47、章重点介绍了项目开发采用的技术,主要介绍了 java web 技术。目前采用 java web 技术开发的项目在市场占有率上超过了其他 web 技术开发的项目,因为 java web 技术具有各种新特性,比如安全性、多线程性和跨平台性等。系统采用了 ssh(struts+spring+hibernate)综合框架来进行项目架构。针对 j2ee 项目架构的特点并结合 struts2、spring 和 hibernate 的各自特点,将这三种框架整合成一个 ssh 集成框架。其中 struts 主要负责表现层,完成页面显示、响应用户请求等功能;spring 主要负责业务逻辑层,完成应用系统的业务逻
48、辑与事务处理等功能;hibernate 主要负责数据持久层,完成与数据层的交互功能。项目采用的 web 服务器是 tomcat6.0。tomcat 作为 java web 服务器来使用,具有占用资源少、性能稳定、免费开源等优点,所以深受 java 程序员的喜爱。中小规模的基于 java 平台的 web 项目都选择使用 tomcat 作为 web 服务器。3 3 系统需求分析及总体设计系统需求分析及总体设计3.13.1 引言引言软件需求分析研究用户需求,完全理解用户对软件需求的完整功能,确认用户软件功能需求,建立可确认的、可验证的一个基本依据4。软件需求分析是一个软件项目的开端,也是项目实施最重
49、要的关键点,其主要目的是让项目开发人员全面掌握用户对软件项目的整体功能要求。需求分析工作人员负责与用户进行沟通,收集用户对软件项目的具体需求和用户使用的相关细节,并制定详细的需求分析文档。据有关的机构分析结果表明,软件产品存在不完整性、不正确性等问题 80以上是需求分析错误所导致的,而且由于需求分析错误造成根本性的功能问题尤为突出14。因此,准确而详细的需求分析是软件项目成功的必要保障。综合问卷调查系统研发最初是为职业技术学校毕业生就业信息调查提供技术支持,然后又发展到增加学生学习情况调查、学生对任课教师教学意见调查等需求。根据高等院校各个部门的不同调查需求,问卷调查系统需要增加动态添加调查问
50、卷的功能,然后针对不同的被调查用户群体匹配不同的调查问卷。综合问卷调查系统的用户需求总体来说比较简单。系统操作流程如下,首先让管理员能够根据调查情况的需要在系统中设计不同的系统问卷,然后导入相应的问卷参与者账户。同时问卷参与者登录之后能够看到生成的问卷并参与答卷。最后管理员可以对参与者回答后生成的答卷结果进行统计。后面的章节会详细介绍用户的需求情况。3.23.2 系统需求分析系统需求分析综合问卷调查系统这个项目的研发最初的目的是收集职业技术学校毕业学生的工作生活情况以及毕业生工作过程中掌握的社会对该毕业生专业技能实际需求。通过收集并且分析这些数据为整个专业的教学计划改革提供一个数据依据。在毕业
51、生信息收集工作启动之后,学校的工作人员通过各种即时通讯工具以及 e-mail 的形式向往届毕业生发送制作成 word 文档格式的调查问卷,然后等待收集毕业生反馈的信息。调查问卷的收集也是通过即时通讯工具或者 e-mail 的方式由毕业生发送文档,工作人员把所有收集的文档统一保存在一个指定的目录中。采用这种传统的方式进行问卷调查有以下几个弊端:1、电子文档的调查问卷可能在传递的过程中遗失;2、参与调查者要完成接收文档、填写文档以及发送文档三个步骤,工作相当繁琐且工作量很大;3、在问卷目录中收集大量的电子文档格式的答卷保存不便;4、需要工作人员去依次查看所有答卷的电子文档才能完成统计功能,占用了大
52、量的时间。综合问卷调查系统的研发就解决了上述问题。就职业技术学校的毕业生信息调查问卷而言,系统工作人员可以直接给往届毕业生发送一个毕业生信息调查问卷的访问地址。参与问卷调查的往届毕业生也不需要完成接收文档、文档中填写信息、发送文档这三个步骤,直接在浏览器中打开毕业生信息调查问卷的访问地址,然后在网页中填写调查问卷的信息之后提交即可。而对于系统管理员来说,最大的两个困难就是调查问卷电子文档的保存以及调查问卷答卷信息的统计,综合问卷调查系统的研发也解决了这两个问题。首先,在综合问卷调查系统中,参与者的答卷信息都保存在数据库的答案数据库表中,这样就不需要去保存大量的电子文档。其次,综合问卷调查系统的
53、统计参与者答卷功能可以针对某份调查问卷的每一个问题,去统计不同的选项被参与者选择的数量在总参与调查人数的比例,解决了人工统计占用时间长又容易出错的问题。综合问卷调查系统中可以由系统管理员自己设计定制调查问卷,并且问卷中问题的类型也多样化,所以可以满足使用单位各种需求的问卷调查。采用b/s 架构设计的系统可以让管理员和问卷参与者直接通过浏览器就能够登录系统15,不需要安装任何客户端程序,为问卷调查的开展提供了便利。3.33.3 系统功能分析系统功能分析本系统要求便于发布与维护,并且能够适应复杂的网络环境,可以在不同的平台下设置应用,系统功能按照用户具体需求情况分为七大功能模块,分别是用户登录权限
54、分配、问卷基本信息编辑、问卷中问题编辑、导入问卷参与者账户、参与问卷答卷、答卷结果查看以及答卷结果统计分析,接下来介绍这七大功能模块的详细情况。1、用户登录权限分配该系统的用户主要分为系统管理员以及问卷调查参与者两种用户,根据用户需求这两种用户都使用同一登录界面进行登录。由于两种用户使用同一个入口进入不同的后台管理界面,所以必须在登录的时候判断用户类型,根据用户的不同类型为用户生成不同的后台管理菜单,并且屏蔽不属于该类型用户的系统功能。系统管理员具备以下的功能权限问卷基本信息编辑问卷的问题编辑问卷参与者账户管理问卷参与者与问卷匹配管理查看答卷信息及答卷结果统计分析问卷调查参与者具有下列功能权限
55、 参与问卷调查 查看本人问卷结果系统需要完成上述两级权限用户的功能划分,并实现权限级别的分类。最主要的是不能让问卷调查参与者使用系统管理员的功能。2、问卷基本信息编辑问卷基本信息编辑属于系统管理员的功能,该功能是针对用户对问卷设计这个需求来制定的。问卷基本信息应该包含问卷名称、问卷补充说明、问卷状态信息、问卷设计管理员这四个属性。问卷设计包括新建问卷基本信息,修改问卷基本信息、锁定问卷以及删除问卷四个操作。3、问卷问题编辑系统管理员的问卷设计流程按照如下步骤进行,第一、首先创建调查问卷,输入调查问卷基本信息;第二、为调查问卷添加问题;第三、对调查问卷基本信息及问题进行修改删除等编辑操作;第四、
56、锁定调查问卷,锁定之后可以预览调查问卷的问题信息。针对问卷中问题管理员用户可以进行问题的添加和删除两个操作。问卷中问题分为单选题、单选补充填空题、多选题、多选补充填空题以及填空题共五类题型。系统管理员可以根据页面不同的选项向问卷数据库中添加不同的问题。同时可以通过问卷问题列表删除添加错误的问题。针对问卷和问卷问题的操作,系统用户有一个需要注意的方面。对一份调查问卷来说,在设计方面组成这个调查问卷有两类属性,分别是问卷基本信息以及问卷内所属问题信息。系统管理员在设计制作问卷的时候,当问卷锁定状态没有打开时随时可以编辑问卷的基本信息及问卷内所属问题信息。系统管理员锁定问卷之后,就无法再对问卷的这两
57、种信息进行编辑了。当问卷锁定之后,虽然无法对问卷信息进行编辑了,但是可以为问卷匹配参与者账户信息,进行下一步操作。4、导入参与者账户信息综合问卷调查的系统管理员账户具有添加问卷参与者的功能。在高等院校受访群体范围比较大,所以调查问卷参与者的账户信息非常多。因为这个原因,如果在系统后台做一个输入参与者账户信息的页面提供给系统管理员输入,那么系统管理员输入调查问卷参与者的账户信息这个过程的工作量会变得非常大。为了解决这个问题,用户提出需要系统提供 excel 文件批量导入调查问卷参与者账户信息这个功能。5、问卷参与者与调查问卷匹配由于综合问卷调查系统需要提供多套问卷答题的功能,而且系统还同时存储大
58、量的调查问卷参与者信息。不同的调查问卷参与者需要参与不同的问卷调查,所以必须添加调查问卷参与者与调查问卷匹配的功能。只有当系统管理员把调查问卷参与者账户与调查问卷进行匹配后,调查问卷参与者登录之后才能参与相对应问卷的调查。6、参与问卷调查调查问卷参与者登录系统之后进入后台管理界面,能够看到系统管理员为该用户匹配的调查问卷。参与者点击问卷链接可以直接进入问卷答题页面进行问卷答卷。调查问卷参与者可以查看自己填写的答卷信息。7、查看答卷信息及答卷结果统计分析查看答卷信息及答卷结果统计分析功能主要提供给系统管理员进行操作。系统管理员通过查询和统计调查问卷参与者答题的数据,并且对这些数据进行分析。最重要
59、的目的是针对问卷中某一个问题,分析参与者选择这个问题各个选项的比例值。3.43.4 系统总体设计系统总体设计.1 系统总体目标系统总体目标基于 web 形式的调查问卷方案实施是在服务器上部署一个完成问卷调查的b/s 架构项目,构建基于 internet 的问卷调查信息管理平台,充分利用网络的优势,推广基于网络的无纸化问卷调查模式,降低问卷调查活动开展的成本16。本项目将综合社会上调查问卷实际需求,充分运用 java web 开发技术及 ssh开源架构,达到如下总体设计目标:(1)采用拦截器技术完成系统管理员和调查问卷参与用户权限模块管理;(2)采用 hibernate 框架一对
60、多映射关联技术及数据库表外键关联设计实现调查问卷试题管理;(3)在系统管理功能中管理问卷参与用户角色组和问卷参与者用户帐户,采用 jxl 外部 jar 包完成使用 excel 文件导入问卷参与者帐户信息内容的功能;(4)在系统管理功能中完成调查问卷分类统计用户选项答案比例;(5)在用户管理中管理参与者登录后匹配答卷信息,参与者点击调查问卷进行答卷功能,参与者提交答案信息功能。.2 系统整体流程系统整体流程对于综合问卷调查系统来说,整体的工作流程就是从问卷设计制作开始,然后导入该问卷参与者,参与者填写调查问卷,最后统计该问卷的答案选项比例。在整个工作流程中系统中三类用户参与操作,
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 基于人工智能的2025年智慧交通流量预测技术发展动态报告
- 建筑施工安全监测方法试题及答案
- 城市交通拥堵治理2025年公交优先战略的实施效果分析报告
- 汇和银行笔试题库及答案
- 黄岩区面试真题及答案
- 黄河委面试真题及答案
- 安全工程师考试常识题目试题及答案
- 工业互联网背景下量子通信技术2025年应用前景分析报告
- 物理学中的混沌现象研究试题及答案
- 智能建筑系统集成与节能降耗在体育场馆中的应用效果研究报告
- 广东省珠海市2024-2025学年高二下学期期中教学质量检测英语试题(原卷版+解析版)
- 北京2025年中国环境监测总站招聘(第二批)笔试历年参考题库附带答案详解
- 美国加征关税从多个角度全方位解读关税课件
- “皖南八校”2024-2025学年高一第二学期期中考试-英语(译林版)及答案
- 2025-2030中国安宫牛黄丸行业市场现状分析及竞争格局与投资发展研究报告
- 防洪防汛安全教育知识培训
- 安宁疗护人文关怀护理课件
- 2025年广东广州中物储国际货运代理有限公司招聘笔试参考题库附带答案详解
- 商场物业人员缺失的补充措施
- 黑龙江省齐齐哈尔市龙江县部分学校联考2023-2024学年八年级下学期期中考试物理试题【含答案、解析】
- 《寻常型银屑病中西医结合诊疗指南》
评论
0/150
提交评论