基于Web项目开发中的Struts2技术探讨_第1页
基于Web项目开发中的Struts2技术探讨_第2页
全文预览已结束

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

办 公自动化杂志Struts2 最早是 Apache Jakarta 项目的组成部分,项目创立者希望通过对该项目的研究,改进和提高 JSP、Servlet 标签库以及面向对象的技术水准 。Structs 采用 MVC模式,帮助 Java 开发者利用 J2EE 开发 Web 应用,和其他 Java 框架一样, Struts 也是面向对象的设计,充分发挥发挥了 MVC 模式 “分离显示逻辑和业务逻辑 ”的优势 。一 、MVC 设计模式MVC设计模式是至今用得比较多的一种设计模式,是最早出现在 Smalltalk 中,后来广泛用于 Java Web 应用程序中 。Model(模型)表示业务逻辑层, View(视图)代表表示层, Controller(控制器)代表控制层 。如图 1 所示:1、模型( Model)部分包括业务逻辑层和数据库访问层 。在Java Web 应用程序中,业务逻辑层一般由 JavaBean 或 EJB 构建 。2、视图( View)在 Java Web 应用程序中, View部分一般用JSP 和 HTML构建,也可以是 XHTML、Applet 和 JavaScript。3、控制( Controller)部分由 Servlet 组成 。当用户请求从 View部分传过来时, Controller 把该请求发给适当的业务组件;请求处理完成后,又返回 给 Controller。Controller 再把处理结果转发给适当的 View组件显示或者调用 Model。因此, Controller 在视图层与业务逻辑层之间起到了桥梁作用,控制了两者之间流向 。在 MVC 设计模式的基础上,推出了许多基于 MVC 模式的Java Web 框架,其中比较经典的是 Struts2。二 、Struts2 的优势Struts2 是在 Struts1 的基础上发展起来的,它克服了 Struts1的许多缺点,并以 WebWork 为核心,采用 WebWork 的设计理念 .。因此 Struts2 并不是 Struts1 的升级版,而是兼容了 Struts1 和WebWork 两个框架, Struts2 有以下优势:1、Action 类Struts2 的 Action 类实现了一个 Action 接口,连同其他接口一起来实现可选择和自定义的服务 。2、线程模型Struts2 的 Action 对象为每一个请求都实例化对象,所以没有线程安全的问题3、Servlet 依赖Struts2 的 Action 和容器无关 。Servlet 上下文表现为简单的Maps,允许 Action 被独立地测试 。Struts2 的 Action 可以访问最初的请求 。但是,应该尽可能避免其他元素直接访问HttpServletRequest 或 HttpServletResponse。4、易测性Struts2 的 Action 可以通过初始化 、设置属性和调用方法来测试 。依赖注入的支持也使测试变得更简单 。5、捕获输入基于Web项目开发中的Struts2技术探讨王洪香(辽宁工程技术大学职业技术学院 阜新 123000)摘 要 Struts2 是构建基于 Java 的 web 应用程序的首选框架 。它所实现的 MVC(模型 - 视图 - 控制器)模式,给 Web 应用带来了良好的层次划分,同时也提供了一系列工具来简化应用的开发 。关键词 Struts2 Java Web中图分类号 TP311 文献标识码 A 文章编号 111031- 5938Struts2 Technology Based on the Web Project DevelopmentWang Hongxiang( Vocational Tech College, Liaoning Engineering & Technology University Fuxin 123000)Abstract Struts2 is the preferred framework for building Web application based on Java. MVC realized by Struts2 hasgood hierarchical division, and Struts2 has series tools to simplify the development of application.Keywords Struts2 Java Web图 1 MVC 设计模式图2011年 12月Tech Vocabulary技 术 词 汇总第 219期32 办 公自动化杂志(上接第 31 页 )开发系统用于项目控制 、界面组态 、实时数据库配置 、系统设备管理和配置 、脚本程序编写 、设备数据和实时数据连接控制网络管理等 。当系统开发配置完成后,运行系统根据开发系统设计和配置的项目文件,读取设备数据到实时数据库中,而报警处理模块 、历史数据处理模块 、画面处理模块 、脚本程序等都是通过不停的读取实时数据库中的数据完成数据处理和刷新的 。由于组态系统涉及的技术很多,下面只以其中关键的两个技术点进行详细的说明:1、设备管理调度设备管理和调度模块是组态系统里面很关键的部分 。一个系统的基础就是设备,只有不同的设备把现场的数据采集进系统,同时去执行组态系统的控制命令 。设备就像控制系统的手和脚,而组态系统则是其大脑,起到总控的作用 。在现实的控制系统中,设备是千差万别的,设备的工作过程 、控制方法 、和系统相连的方式都是不一样的 。设备的数据如何快速准确的传递给组态系统的实时数据库中,是组态系统快速响应 、进行实时控制的基础 。在设计设备管理和调度模块,必须充分考虑通用性 、数据快速更新等要求 。在设计本系统时,根据设备的特点,首先把设备分为两种:父设备和子设备 。父设备类似为一种通信通道的设备,如串行口 、网络等 。父设备根据其使用特点,也可以分为两种类型:一类是可以连接多个子设备,可以对子设备控制,此类父设备有一定的管理功能,可以控制多个子设备有序的工作,但是本身不提供数据,其数据有子设备提供,子设备要发送的命令有父设备发出,而自己只要把发送的数据交给分设备,同时父设备把接收到的数据交给子设备进行解释从而获取数据 。另一类父设备是本身提供数据,设备和计算机直接的接口由自身负责,此类设备典型的有通过OPC连接的设备 、通过 DDE 连接的设备等 。子设备是通过硬件通道和计算机相连的设备,可以是物理设备,如 PLC、板卡 、各种测量仪表等;也可以是虚拟设备,以完成特点的功能,如数据同步等;还有一些就是对具体的通信协议进行支持的虚拟设备,如 MODBUS协议驱动程序 。只要相关的硬件支持 MODBUS 协议,即可通过父设备连接到计算机,进行数据交换,而本驱动程序是考虑具体连接的物理设备 。通过上面的分析,系统中把每个设备的管理写成独立的DLL文件,称为设备驱动程序 。每个设备的驱动程序负责和自身相关的工作,包括参数设置 、提供的数据信息 、分析数据等工作 。2、实时数据库实时数据库是组态系统运行时的核心,其实时数据库管理好坏对系统的性能有很多的影响 。系统的设备调度模块 、报警模块 、历史数据模块 、画面数据更新 、脚本程序 、曲线模块 、报表模块 、事故滤波 、控制过程等等都要和实时数据库交互数据 。所以管理实时数据库的比较复杂,在保证快速访问数据的同时,也要实时数据库的数据完整性和安全性 。不能同时写实时数据库通一个数据 、不能同时读和写实时数据库中通一个数据 。系统中实际用到的数据千差万别,但是归纳起来分为四类:开关类 、数据类 、字符串类和组类 。开关类数据只有两种值, 0 和1;数据类为模拟数据,在系统中用浮点数表示;字符串类一般用于文字描述;组类相当于一个实时数据的集合,可以把数据进行分类,方便统一管理 。每种类型的数据能够进行的处理是不一样的,开关类和数据类数据可以设置为报警数据,可以作为历史数据保存;字符串类则不能进行此类操作;组类数据可以把相关实时数据归类,用于历史数据保存或事故滤波处理,但是不能进行报警处理 。参考文献1 路立峰,陈平,杜军朝等 . 设计模式应用实例 J. 微机发展, 2005, 15( 2): 134- 1361.2(美) William G. Page, Jr.等著 . Oracle 8/8i 开发使用手册M. 王磊,蒋蕊等译 . 北京:机械工业出版社, 2000 年 .3刘勇,李腊元 . 基于 J2EE 的企业级系统的研究与应用 J.武汉理工大学学报(交通科学与工程版), 2004, 28( 1): 26- 29.4王肖锋,曹作良 . 基于 Struts 体系结构的企业级应用系统J. 天津理工学院学报 , 2003, 19( 4): 63- 65.作者简介钟秀娟,女, 1982 年出生,江西赣州人,大学助教 、工程师,长期从事计算机应用及电子设计与控制方面的工作 。Struts2 直接使用 Action 属性作为输入属性,消除了对第二个输入对象的需求 。Action 属性能够通过 Web 页面上的 taglibs访问 。Struts2 也 ActionForm模式,简化了 taglib 对 POJO输入对象的引用6、表达式语言Struts2 使用 JSTL,但是还支持一个更强大的灵活的表达式语言 Object Graph Notation Language( OGNL) .7、类型转换Struts2 内置了转换器,对于日期 、整数或浮点数等类型会自动去调用相应转换器进行类型转换,为编程带来极大的方便 。8、视图支持Struts2 提供了对 FreeMarker、Velocity 等模板技术的支持,并且配置很简单 。三 、结束语基于 Struts2 的以上优势,使得 Struts2 在 Java Web 开发中扮演着重要的角色 。而且目前上升势头非常强劲 。参考文献1甘 勇等 .JSP 程序设计技术教程 M.北京:清华大学出版社 2010 年

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论