基于J2EE架构的政务系统架构的研究与实现
摘要:构建基于ejb的重量级的电子政务应用系统的规模越来越大、软件危机程度的日益加剧,本文对当前几种主流strutsspringhibernate轻量级框架深入研究,采用基于架构整合的思想,结合实际开发经验,设计一套电子政务系统开发框架,由于系统存在响应速度慢,服务器压力过大等问题,本文在集成框架中引入ajax技术,以提高系统的交互性,并通过在南宁市政协提案管理系统中成功应用,验证了该框架技术的可行性。
关键词:电子政务;j2eestrutsspringhibernateajax;框架
中图分类号:tp311.52文献标识码:a文章编号:1007-9599 (2013) 06-0000-02
1引言
近年来信息技术的发展与应用已进入了智能化时代,电子政务也因新技术的应用将政府内部和外部的管理与服务职能进行无缝集成,为社会及自身提供一体化和全方位的高效、规范、优质、透明管理与服务。如何让智能化技术与电子政务结合,本文利用当前开源框架,设计并实现一种开发快捷轻量化的web应用系统,大大提高了处理各种各样服务效率;降低了管理成本,
缩短了公共服务请求的响应时间,提高了公民对公共服务的满意度和政府部门运作的整体效率。
2系统架构设计
2.1系统架构的总体设计
通过对实际业务情况进行系统需求分析,搭建最适合本系统需求的基于struts2+spring+hibernate的架构方案。系统框架的整体模型如下图2-1[5]所示:
2-1struts2hibernatespring整合总体结构
web层由struts2架构实现,以l为核心,根据用户的请求,做出相应的响应。业务层由spring架构实现,通过ioc容器实现依赖注入,降低组件之间的耦合度,增强系统兼容性和可扩展性。持久层由hibernate架构实现,通过orm工具,实现数据库访问性能优化和与数据库交互的常用操作,并将数据库表与对象进行关联。整合后系统架构的工作流程如下图2-2
2-2架构工作流程图
struts2spring的集成:处理用户请求的actionspring插件创建的,根据bean的配置id属性,从spring容器中获得了对action实例的管理权,它将对action进行调度,并为struts提供所需的action实例,action完全由spring全权接管,它可享受spring提供的所有服务。
springhibernate的集成:把l文件注入到hibernate3.localsessionfactorybean的属性configlocation,创建sessionfactory,而spring通过sessionfactoryhibernate进行封装和接口转换,在业务逻辑方法中继承hibernatedaosupport类,使用hibernatetemplate来持久化,hibernatetemplatespring framework组件hibernate session的轻量级封装,这样可以使用统一的方式来处理springhibernate,同时提供一个全局的sessionfactory。在使用hibernate的应用中springhibernatetemplate类可以完成异常捕捉、事务管理,而无需冗余代码。
2.2ssh框架与ajax技术的集成
根据ajax技术特点,本系统采用服务器端dwrssh集成,dwr将服务器端的一个servlet负责所有与客户端的javascript通信工作,将服务端所写的java直接转换为javascript中可引用的对象。
3政协提案系统的设计与实现
3.1需求分析
协提案管理系统是南宁市电子政务重点业务系统之一,针对该系统三种类型用户:政协委员、政协机关提案管理部门、各承办单位,系统可分成三个子系统:提案网上提交查询子系统、提案管理子系统和提案网上办理子系统,政协提案管理系统的结构。
3.2系统实现
1)数据操作层
数据操作层由实体、接口和接口的实现类组成。接口是定义业务操作数据持久的方法。接口实现类是实现数据持久化的具体实施,在实现类中完成数据持久化操作功能。
数据操作持久接口:在iappuserdao中定义添加用户的方法add,参数为appuser,无返回值:所依赖的sessionfactory生成的session对象。
listappuserpg.action
……//其他配置略
4ajax技术的应用与实现
本系统中网页局部刷新数据功能由ajax技术实现,该功能通过dwr框架将前台页面javascript脚本调用后台javabean的方法,获取数据进行更新页面局部数据:设置dwr配置文件dwr. xml:实现用户分页处理的newpager ()方法位于appuserdao.java类,该类已在springioc容器中实现:

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。