基于strutshibernate数据采集系统设计与实现.doc

上传人:飞****2 文档编号:52216786 上传时间:2022-10-21 格式:DOC 页数:27 大小:941.50KB
返回 下载 相关 举报
基于strutshibernate数据采集系统设计与实现.doc_第1页
第1页 / 共27页
基于strutshibernate数据采集系统设计与实现.doc_第2页
第2页 / 共27页
点击查看更多>>
资源描述

《基于strutshibernate数据采集系统设计与实现.doc》由会员分享,可在线阅读,更多相关《基于strutshibernate数据采集系统设计与实现.doc(27页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。

1、 本 科 生 毕 业 论 文(或设计) (申请学士学位)论文题目 基于Struts/Hibernate数据采集系统设计与实现 作者姓名 方 涛 专业名称 信息与计算科学 指导教师 陈寿文 2013年5月26日学 生: 学 号:论文答辩日期:2013年 6月 2 日指 导 教 师: 目 录摘要1Abstract11 绪 论21.1 背景和基本概念21.2 相关技术支持32 概要设计42.1 系统功能需求分析42.2 系统表的分析与设计62.3 UML的分析与设计83 详细设计93.1环境的搭建93.1.1导入系统依赖的Jar包93.1.2整合三大框架103.1.3测试SSH整合是否成功113.2

2、 代码实现113.2.1完成Hibernate的ORM映射123.2.2 完成Service的实现133.2.3 完成Action的实现133.2.4 完成JSP视图144系统单元测试144.1 测试新建一个调查144.2 选择创建的调查参与问卷调查154.3 对采集的统计信息进行汇总分析164.4 对数据采集系统进行权限管理184.5 系统单元测试总结22参考文献23基于Struts/Hibernate数据采集系统设计与实现摘要:传统式的(数据采集)问卷调查方式存在弊端,由工作人员分布到各处去发放,回收,统计,分析答卷,需要投入较多的人力和物力,且局限于个别地区的统计结果,一次调查在时间,人

3、力和物力成本上都是比较昂贵的,随着网络的建设推进,基于JAVAEE + SSH的问卷调查系统更具有现实意义,为需求者提供方便的网络问卷调查,让需求者能够快速、方便问卷调研,调查问卷设计,跨区域、低成本, 投入少量人力,物力即可操作问卷调查流程从而获得丰富的反馈信息已经成为发展趋势。关键词:数据采集系统;Struts;Hibernate;Spring A Data Acquisition System Template Based on Struts and HibernateAbstract: Traditional (data acquisition) questionnaire way e

4、xistence malpractice, from staff distribution to distribute, recycling, statistics, analysis of exam paper, costs a lot of manpower and material resources, and confined to the individual areas of statistics, an investigation at the time, manpower and cost are expensive, along with the network constr

5、uction to advance, based on the JAVAEE + SSH survey system has practical significance, for those who need to provide the convenient network questionnaire survey, make the requirements can quickly, conveniently questionnaire survey, questionnaire design, cross area, low cost, put up a small amount of

6、 human, material and can be operated by questionnaire survey procedure to get rich feedback of information has become the development trend. Key words: Data Acquisition; Struts; Hibernate; Spring 绪 论在开发数据采集调查系统的过程中,发现问卷的生成、发布、统计、分析统计业务逻辑的实现在逻辑上是基本相同的,只是问卷的内容部分不同。因此构想使用Struts、Hibernate、Spring架构开发调查问卷

7、系统的一个通用模板。只需输入问卷的名称,问题,选项的内容,该模板就能生成问卷调查,提高了代码的复用率,实现了“一次开发,多次使用”的效果,并支持用户自定义问卷调查内容,用户可以调整问题的内容,问题的位置,复制,移动问题等。1.1 背景和基本概念数据采集(问卷调查法)是收集数据或资料的常用方式,问卷调查法适用范围面广、获取数据信息便捷、研究成本相对较低,在很多领域和范围得到广泛使用。自20世纪80年代以来,随着PC的出现和逐渐普及,计算机日益成为调查者特别方便的工具。到90年代之后,随着Internet的发展与广泛普及,以及各种基于Internet的调查方式开始涌现:计算机辅助网络采集、移动信息

8、调查等。目前基于Internet的网络问卷调查分析统计用得十分普遍,很多的企业或者公司开始使用网络问卷调查来获得数据信息。然而每研发一个新的数据采集分析系统,需要耗费大量时间、人员、资金。很多已有产品存在功能过于强大、操作过于复杂、费用比较昂贵等缺点。为需求者提供网络问卷,让需求者能够快速、便捷问卷调研,调查问卷设计,跨地域、低成本, 投入少量成本即可操作问卷调查流程从而获得丰富的反馈数据信息已经成为趋势。一个高效专业的数据采集平台越来越成为人们的需要。本系统设计的目的是当企业、组织或些个人需要采集或分析一些反馈的数据、信息或资料时,为需求者提供适合的网上问卷,统计分析数据或答案,为需求者掌握

9、反馈数据信息提供便利。针对现有一些网络数据采集的缺点,本系统要生成一个能够提采集效率,使调查数据的处理更方便。伴随着计算机科学与技术的快速发展,和基于Web的数据采集的广泛应用,原来传统的数据采集系统方式很难迅速开发出一个强大功能的Web数据采集系统(单纯基于Servlet+JSP+Servlet+JDBC)。随着程序开发的不断总结与发展,人们越发感觉到传统开发方式效率的低下,代码冗余度较高,耦合性较强,人员的分工不得体,使整个开发的进度大大降低,由于代码的冗余,很难在后期对原来开发的系统进行维护和扩展,于是提出了MVC思想,将视图(View),模型(Model),控制器(Controller

10、)作为开发的三个模块,使不同的人或者部门专注于某一部分,大大提高了开发的速度,符合模块化程序设计的思想,降低了耦合性,提高了团队协作的效率,对于后期的维护变得相对简单了许多,随着MVC思想的普遍应用,一些优秀的MVC框架也雨后春笋办的出现,如一些开源组织,apache的Struts11, Struts22,以及Webwork的Webwork框架,Spring公司的SpringMVC3框架。一些公司也开发了自己的MVC框架,像淘宝,华为,中兴等公司,都开发了自己的MVC框架,其中Struts2是现在众多公司或者个人用的最流行的一款MVC框架,为了该数据采集系统后期的维护与扩展,以及现阶段开发的便

11、捷性数据采集系统选择Struts2作为该系统的MVC框架。MVC的出现,在控制转发的方便带来了便捷,人们越来越关注与Model层的开发,传统方式通常需要手动拼接sql语句来查询数据库获取所需要的信息,然而查询出来的结果通常也是一些散装数据,仍然需要将这些散装数据放置到新创建的对象中,这个过程很是繁琐,不符合Java一直提倡的面向对象思想(OOP)4,而且,通常一个JavaBean5和数据库中的字段是一一对应的,Java本身也提供了反射的特性,于是Hibernate6出现,并提出将数据库中查询到的数据封装成JavaBean,或者将JavaBean的属性持久化到数据库的过程叫做持久层操作,对应的过

12、程叫做持久层。伴随着持久层的出现,大大提高了数据库操作的便捷,只需要JavaBean的属性通过XML7映射到数据库的字段,只需操作对应的JavaBean即可,Hibernate自动将属性持久化到数据库,或从数据库查询字段,封装到JavaBean的属性,本系统便是采用Hibernate作为持久层。为了减少对象之间的耦合,便使用Spring8做为容器,负责对象的创建与装配,这个过程便是控制反转,或者依赖注入,负责将Dao9注入到Service,并将Service注入到Action。1.2 相关技术支持Struts是Apache 基金会众多项目组中的一个开源项目,它是MVC框架,能够很方便地帮助J2

13、EE 开发者利用开发Web应用。和其他的Java架构一样,Struts2 也是面向对象程序设计(OOP),将MVC模式分离视图模型和控制逻辑的功能发挥得淋漓尽致Struts的控制层,基于如 Servlets,JavaBean,JSP,JDBC与XML等标准技术,以及 Apache Commons 的一些类库。Struts2由一组相互协作的组件,Servlet以及jsp ongl tag lib组成。基于Struts2构架的web应用程序符合JSP MVC思想的设计标准,可以说是一个MVC设计思想的一种具体实现。Hibernate是一个开源的对象关系映射(ORM)持久层框架,它对JDBC进行了非

14、常轻量级的面向对象封装,使得JavaEE程序员可以随心所欲的使用面向对象编程思维(OOP)来操纵数据库。 Hibernate可以在任何使用JDBC的场合使用,既可以在普通JavaSE的程序使用,也可以在Servlet/JSP的JavaEE应用中使用,最具意义的是,Hibernate可以在应用EJB的JAVAEE架构中取代CMP,完成数据持久层的重任。Spring提供的IoC容器,我们可以将对象之间的依赖耦合关系交给Spring进行控制,解决了硬编码所造成的程序耦合。项目中整合Spring,程序开发者不必再为单例模式实体、属性文件解析等底层的需求编写代码,可以更专注于上层业务逻辑的编写。2 需求

15、分析分析采集系统的可行性,采集系统的模块功能的分析,数据库表的分析设计,UML图的分析设计,并完成Struts,、Hibernate、Spring框架的整合,采集系统(问卷调查)环境的搭建。2.1 系统功能分析通过对数据采集系统的需求进行初步研究,该系统应该包含问卷中心,用户管理,问卷统计分析,系统管理等模块,具体模块详细描述如下:(1)问卷中心其中设计问卷包括:题型分类、设置问卷的公开级别;发送问卷包括:问卷链接和邀请邮件等;统计分析包括答卷来源、答卷时间和调查结果等筛选出符合条件的答卷集合,并且能以柱状图等形式呈现,问卷的操作包括对问卷的修改,问卷中页面的修改,以及对问卷中每个问题的修改,

16、不仅可以做到增删改查的基本功能,而且可以做一些复杂的移动,复制等操作,如图2-1修改问卷问卷管理创建问卷修改复制移动插入单选题矩阵单选题矩阵复选题复选题 图2-1 问卷中心功能分解图(2)用户管理主要是对用户的基本信息、登录、注册、权限等进行管理, 确保答卷信息的真实性和可信性,进而获得有参考价值的统计数据。如图2-2图2-2 用户权限管理基本功能图(3)问卷统计分析收集问卷、整理问卷和回收问卷,问卷的统计分析,生成各种直观统计图形等功能。或者用户自定义导出统计结果,通过第三方软件自定义分析统计。如图2-3图2-3 问卷统计分析功能分解图(4)系统管理系统维护等功能,日志的记录,监控系统的运行

17、状态,内存CPU的使用状态,定期对收集的日志信息进行统计,系统的安全良好运行作为指导。2.2 系统表的分析与设计通过对系统功能需求分析的结果进行分析,该系统包含,问卷的设计,问卷的统计与分析,用户登陆与注册,系统的权限管理模块,用户可以登陆注册,因此拥有用户名,密码属性,用户拥有多个角色,一个角色拥有多个权限,一个问卷拥有多个选项,一个用户可以回答多个问卷,每个答案应该标明所属的人员,所属的问题等信息,一个权限对应一个URL,用一个权限码与权限位来标示该权限,通过与运算与或运算计算用户是否拥有访问这些URL的权限,系统应该具有结构,以及表之间的关联关系如2-4图所示,分别是E-R图,与设计后的

18、表的关系图以及表的分析如图2-5:显示类型答案logo开启标题n回答时间拥有1nn创建拥有问题1用户名调查1密码样式标题类别选项用户邮箱m属于nmn权限拥有角色注册时间类型编码描述角色值名称连接权限位名称描述图2-4 数据采集系统的E-R图图2-5 根据E-R图创建的表该系统主要包含问答模块,权限管理模块,用户模块,对三个模块相关的表具体分析如下:问答模块:主要是问题的设计与回答,因此需要一个问卷表survey,问卷包含创建该问卷的用户userid,创建的时间createDate,描述信息desc等字段,一个问卷可以有多个页面,因此需要一个页面表page,需要记录它属于哪个问卷因此有个字段su

19、rveyId,每个页面有自己的标题,title等字段来描述该页面,一个页面又有多个问题,因此创建一个表叫做question,一个问题需要标记它属于哪个页面,因此由个字段叫做page来标示它属于哪个页面,一个问题有多个选项,因此需要一个表叫做option,option有个字段叫做questionId标示他属于哪个问题,以及content来说明选项的内容,type说明选项的类型,需要有个表来记录用户的回答信息,因此有个表叫做answer用来记录用户的回答信息。权限模块:一个系统的发布,就需要有权限管理模块,让不同的用户拥有不同的权限,比如参与回答的权限,或者设计问题的权限,或者管理其他用户的权限,

20、一般系统中权限主要由用户,角色,权限与中间表总共5个表来完成对权限的管理,因此有个表叫做user代表该系统的所有用户 ,有个表叫做角色表role,包含userid表示创建该角色的人,createDate表示创建时间等,一个表叫做right表示一个权限,每个权限对应一个URL代表一个请求,通过权限码来验证该用户是否拥有请求该userld的权限,还有两个表分别是中间表,user_role表示用户和角色之间的关系,可以将角色赋给用户,于是,用户拥有该角色的所有权限,如超级管理员,普通管理员,普通用户等简单角色,角色和权限之间的中间表role_right,可以将权限赋给角色,表示该角色拥有那些权限。于

21、是该角色的人便可以访问这些权限对应的URL.用户模块:包含用户的个人信息,用户名username,昵称nickname,密码password,性别sex,age年龄,上次登陆IP,上次登陆时间lastTime等信息,记录用户的状态,用来用户的登陆,注册,找回密码等信息,用户可以在该系统中发表个人的心情,说说等信息,通过中间表friend来记录该用户的好友,friend表包含self自己,other好友保存自己的Id,好友的Id,通过关联查询来查看好友的动态,最近好友的登陆信息,说说,心情等,用户可以将自己参加的调查分享给自己的好友通过share表来实现,share有userId用来记录分享人。

22、当用户登录的时候,通过查询share表,friend表显示自己的好友参加了哪些调查,通过点击链接参加与好友相同的调查等,增加了该系统内部,用户之间的交流,互动,让用户乐于参与调查,享受参与调查,让更多的用户参与进来,使得到的数据更加具有参考性,用户也可以参加问卷的设计与发布,使数据采集系统的应用更加广泛,而不仅限于政府与公司的数据采集。2.3 UML的分析与设计 根据数据库表创建Domain模型,以及对应的Service,DAO,Action模型的绘制的完成。对应的UML图形如图2-6:图2-6 数据采集系统的UML图形3 详细设计对概要设计的结果进行具体实现,主要为代码的实现,包含环境的搭建

23、,系统各个模块的实现以及单元测试和测试结果分析。3.1环境的搭建导入Struts、Hibernate、Spring对应的Jar包,并完成配置文件的配置,完成三大框架的整合,并测试环境是否搭建成功。3.1.1导入系统依赖的Jar包分别导入该系统所依赖的第三方Jar包,Struts的Jar包,Hibernate的Jar包,Spring的Jar包以及其他相关的Jar包。将以下包导入到项目的WEB-INFO/lib下,并选择build path将导入到Jar包关联到整个工程,使工程能够引用到导入的Jar中封装的类,Struts2的的对象工厂是StrutsObjectFactory,在Struts.pr

24、operties中,Struts提供了一个适配器整合Spring在Struts-Spring-plugin.Jar中,将Struts的工厂类替换成SpringObjectFactory,因此将Struts对象的创建托管给了Spring,Hibernate的核心类是SessionFactory,Spring提供了一个类LocalSessionFactory,作为SessionFactory的一个实现,于是Sring将Hibernate整合到Spring中,因此Struts,Spring,Hibernate通过适配器整合到一起,体现了面向接口程序设计的思想,通过接口的扩展,使SSH完美的整合到一起

25、,Struts负责请求的转发,Spring负责对象的创建与装配,连接Controller与Model层,Hibernate负责对象的增删改查。导入的asm包,主要负责字节码的操作,动态的生成代理类,无需再次经过编译环节,cglib是对ams包的加强,Hibernate用来生成代理类,用来实现延迟加载技术,Spring用来动态生成代理类实现AOP技术,如声明式事务的实现。aopalliance包定义了AOP的核心接口,c3p0包是数据源的实现,commons-loging,commons-fileupload等是apache提供的基础包,主要负责日志,文件上传等内容,quarts包主要负责的是定

26、时器(任务调度),定时做数据备份,定时创建日志表等操作,Spring-modules包主要负责数据的缓存,对经常查询但很少改动的数据进行缓存,下次再次请求时,直接从缓存中取数据,减少了数据库的访问,减轻了数据库的负担。依赖的所有Jar包如图3-1图3-1 数据采集系统依赖的Jar包3.1.2整合三大框架在web.xml中添加如下代码,并创建Struts.xml文件,完成Struts的整合web容器在启动时创建对应的过滤器,拦截所有的请求,如果请求的是Action则动态的从容器中创建Action响应用户的请求,否则直接放行。表一 web.xml中添加代码org.apache.Struts2.di

27、spatcher.ng.filter.StrutsDispatcher在web.xml中引入如下代码,并创建applicationContext.xml文件完成Spring的整合,启动时加载监听器,监听器完成Spring容器的创建,创建完成保存到servletContext实例application中作为application的属性,然后加载配置文件,初始化配置文件中的配置对象,保存到Spring容器中,并且对对象进行装配。表二 web.xml中引入代码contextConfigLocationclasspath:applicationContext.xml在applicationContex

28、t.xml添加如下代码完成Hibernate的整合,Spring会创建Hibernate的核心对象sessionFactory,此对象包含数据源属性,可以通过该对象获取封装connection的对象session,通过session可以完成对对象的增删改查。表三 applicationContext.xml添加代码3.1.3测试SSH整合是否成功创建测试类Test测试Spring、与Hibernate是否整合成功,若整合成功,则数据库成功插入一条数据,使用MyEclipse启动调试模式,在获取Service的地方打上断点,启动调试,程序在断点处暂停,此时查看Service的信息,若Servic

29、e已经被代理说明配置声名式事务成功,否则说明声名式事务没有起到作用,需要重新检验自己的配置文件。表四 测试代码Testpublic void test() ApplicationContext ctx = new ClassPathXmlApplicationContext(applicationContext.xml);UserService service = ctx.getBean(userService, UserService.class);service.addEntity(new User();3.2 代码实现逐步完成Action, Service, Dao代码的实现,由于采用了

30、MVC架构,不同模块的代码可以由不同的人专门负责,体现了分工协作的便捷以及模块化程序设计的思想,而且每个模块由不同的人负责维护,便于后期的扩展和代码的复用,是软件工程思想的具体应用,以下为部分代码示例:3.2.1完成Hibernate的ORM映射创建Domain类,并将对应的字段通过配置文件映射到数据库的字段,Hibernate体现了面向对象对象的思想,将数类映射到数据库中的字段,在查询时,将查询的结果通过Java的反射机制封装成Java对象。User类分别由username属性,password属性,email属性,nickname属性等组成。表五 Hibernate的ORM映射代码publ

31、ic class User implements Serializable private Integer id;private String email;private String password;private String nickName;private Date regDate = new Date();映射文件User.hbm.xml,分别将User类中的id, password, username映射到数据库的字段中,分别指明类的名称,属于哪个包,每个字段对应的类型,映射到数据库的哪一个字段,或者字段的长度,等等信息。表六 映射文件User.hbm.xml代码UserDao继

32、承BaseDaoImpl完成对User的增删改查,并且将Dao注入到Service,Service通过调用Dao完成基本的增删改查,Dao主要负数据库的操作,属于持久层,代码如下:表七 UserDao代码public abstract class BaseDaoImpl extends HibernateDaoSupport implements BaseDao public T addEntity(T entity) public T deleteEntity(Serializable id)public T getEntity(Serializable id)public T mergeE

33、ntity(T entity)public T updateEntity(T entity)3.2.2 完成对应Service的实现Service主要负责业务逻辑,以及事务的控制,UserService继承BaseServiceImpl基本可以完成Service的大部分功能,Service属于业务层,负责整个业务的流程,每个环节通过调用Dao来实现,Service通过AOP动态代理来控制事务,如果成功则持久化到数据库,如果失败则回滚事务,充分体现了AOP思想的具体应用。表八 Service的实现代码public abstract class BaseServiceImpl implements

34、 BaseService public T addEntity(T entity)public T deleteEntity(Serializable id)public T getEntity(Serializable id)public T mergeEntity(T entity)public T updateEntity(T entity)3.2.3 完成对应的Action的实现UserAction主要负责请求的转发,业务逻辑的调用,参数的传递,接收前台客户端传送的数据,封装成临时对象,传递给Service,Service负责对象的处理,将处理的结果返还给Action,Action将返

35、回的对象保存到request,session等作用域,传递给视图,视图通过这些模型对象负责前台页面的展示。表九 UserAction代码public class UserAuthorizeAction extends BaseAction public String allUsers()public String clearAuthorize()public String editAuthorize()public Collection getAllUsers()public Collection getNoOwnRoles()public void setNoOwnRoles(Collect

36、ion noOwnRoles)public void setOwnRoleIds(Integer ownRoleIds)public void setUserId(Integer userId)public void setUserService(UserService userService)public String updateAuthorize()3.2.4 完成对应的JSP视图主要负责数据的接收,传输,展示,通过表单,表单中包含文本框,单选复选按钮,文本域等字段,传输到后台,通过css+div控制前台视图的展示,使界面更加友好,接收后台Action的数据进行展示前台的数据,加上css

37、+div的控制可以通过表格或者不同的元素进行展示。表十 JSP视图代码序号IDemail昵称修改授权清除授权4系统单元测试数据采集系统至此已经完成各个模块的详细设计,系统的完成需要进行各个模块的测试来验证系统是否满足前期做的需求分析,以及系统是否存在安全漏洞需要完善,首先就是检验系统是否能完成测试的流程。4.1 测试新建一个调查创建调查的页面如下,一个调查可以包含多页,通过上一页,下一页进行各个页面的导航,一个页面包含多个问题,问题包含多选,单选,包含其他,不包含其他,矩阵单选,矩阵复选题等类型的问题。第一个问题是复选框,没有其他选项,用户可以选择多个选项,第二个问题也是复选框,可以选择多个,

38、同时可以选择其他选项,其他选项也是复选框,第三个问题是单选按钮,没有其他选项,用户只能选择一个选项,第四的问题也是单选按钮,包含一个其他选项,在其他选项的后面有一个文本框,用户可以输入其他选项的内容,第五个问题也是单选按钮,包含一个其他选项,其他选项是一个下拉列表,用户只能从下拉列表里选择其他项的内容。具体问题设计如图4-1图4-1 创建调查页面效果图4.2 选择创建的调查参与问卷调查用户可以选择设计完成并且发布的采集问卷进行回答,当一个问卷设计修改完成后可以通过点击是否发布下的按钮确认该问卷的状态,若是未发布状态,则表明该问卷是编辑阶段,用户尚不能对该问卷进行回答,而且在参与问答的页面也看不

39、到该问题。若是发布状态,则表明该问题是回答的状态,有权限的用户都可以参与该调查的回答。登录之后选择参与调查,如果用户拥有参与调查的权限,则可以点击已发布的调查进行参与,点击调查的分享链接,可以将当前调查分享给自己的好友,好友可以看到自己的状态,和自己参与同样的调查。打开调查的页面之后,当选择上一页,或者下一页时,提交当前页,并将当前页的答案保存到Map中,当前页的选择状态被缓存到Map中,防止点击上一页或者下一页时当前页的选择状态丢失,当点击提交时,将缓存中的选择状态一并提交,将先前提交的数据,和当前页的数据进行分析汇总统一提交,效果如图4-2图4-2 参与调查页面效果图4.3 对采集的统计信

40、息进行汇总分析如问题1选项的统计结果,可以通过饼状图,条形图,折线图,立体饼图,立体饼图,立体条形图等方式进行直观的汇总分析,通过某个选项占说选取总数的比例,以及来确定某个选项更受人们的亲睐,政府可以完善自己的执政方针,更利于服务人民,公司更加了解客户的需求,为用户提供更加方便使用的产品,其中的其它选项,可以让用户自己输入,如用户的建议,反馈等信息。如果以上所有的统计形式仍然不能满足用户的需求,用户可以自己选择导出统计结果,通过第三方软件自己分析。第一个图是饼状图,很直观能看到每个选项占所有选项的选中比率,第二个图是柱状图,能比较直观的看到每个选项选中的数量,以及不同选项之间选中数量的差距,第

41、三个图,不仅能突出每个选项选中的次数,也能突出每个选项所占的比率,是一个比较综合的统计分析结果图,用户可以根据侧重点具体选择,不仅以下的图,也可以是,立体饼状图,平面条形图等类型的显示效果。部分统计图如图4-3问题1 平面饼状图问题3 立体柱状图问题2 矩阵式统计结果图4-3 直观的汇总运行页面效果图如果调查者对上述统计结果感觉仍然不够直观,可以通过Excel方式导出统计结果,自己通过第三方软件(如Spass, Excel等)对结果进行汇总分析,点击该问卷的导出按钮,则可以通过POI将该问题的回答结果,导出到Excel形式的文件,用户可以选择直接在线打开或者下载到本地磁盘保存,导出调查结果如图

42、4-4图4-4 导出调查结果运行页面效果图下载统计信息,通过第三方软件自行分析(如Spass)4.4 对数据采集系统进行权限管理该系统,不同的人对该系统拥有不同的权限,如创建调查,分析调查,统计调查,管理其他用户等权限,该系统通过用户,角色,权限建立关联,并通过,权限码的方式管理权限,进行权限验证,如下为权限管理,一个权限对应一个操作,拦截器拦截用户的请求后,首先判断该请求的资源是否是普通资源,如果是普通资源,则直接放行,如下图,如果选中,则表示该请求的URL对应的是普通资源,该系统有一种角色是特殊的角色,就像操作系统,数据库的超级管理员,超级管理员有一个角色值-1,判断是否是超级管理员,如果是超级管理员则直接放行,如果既不是超级管理员,也不是普通的资源,则进行权限验证,先获取请求URL中对应的权限码,权限位,与用户对应的权限和进行计算,权限管理效果如图4-5 图4-5 导权限管理页面效果图如下为角色管理,将多个权限设置到一个角色,多个角色设置到一个用户,用户拥有对应权限操作的功能,每个角色创建时,选中角色值,用来描述该角色代表的操作,选中多个权限赋予该角色,每个权限的创建,系统自动为其

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 教育专区 > 教案示例

本站为文档C TO C交易模式,本站只提供存储空间、用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。本站仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知淘文阁网,我们立即给予删除!客服QQ:136780468 微信:18945177775 电话:18904686070

工信部备案号:黑ICP备15003705号© 2020-2023 www.taowenge.com 淘文阁