ImageVerifierCode 换一换
格式:DOC , 页数:7 ,大小:139KB ,
资源ID:1196833      下载积分:10 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.docduoduo.com/d-1196833.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录   微博登录 

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(struts、spring和hibernate架构在地铁车体设计平台上的应用.doc)为本站会员(cjc2202537)主动上传,道客多多仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知道客多多(发送邮件至docduoduo@163.com或直接QQ联系客服),我们立即给予删除!

struts、spring和hibernate架构在地铁车体设计平台上的应用.doc

1、Struts、Spring 和 Hibernate 架构在地铁车体设计平台上的应用 (摘要:将 Struts、Spring 和 Hibernate 架构技术应用于地铁车身设计平台系统开发,按照MVC 设计模式将系统分成表示层、持久层、业务层和域模块等四层,提高系统的开发效率、可维护性和健壮性。对 Struts、Spring 和 Hibernate 的相关文件进行配置。运用面向对象的思想和 Java 语言发布了一个地铁车体设计平台。关键词:产品数据管理;信息集成;产品数据库;MVCStruts, Spring and Hibernate framework application for sub

2、way bodywork design platformAbstract: Struts, Spring and Hibernate framework technology are applied to the subway bodywork design platform system development. According to MVC model, the system is divided into four levels: Presentation Layer, Persistence Layer, Business Layer and Domain Model Layer,

3、 and thus development efficiency, maintainability and robustness of the system is improved. Related files of Struts, Spring and Hibernate framework are configured. The subway bodywork design platform is released based on object oriented and Java.Keywords: product data management; information integra

4、tion; product database;MVC城市轨道交通技术装备是其技术水平的标志,涉及机械、电子、自动化、材料科学等多个领域 1。因此,地铁车体设计、分析过程中的产生数据类型复杂且繁多,为满足地铁车体设计对象本身的复杂性,以及设计分析过程中所产生信息的动态性,开发一个支持地铁车体设计平台,提供给设计者们一个相互交流,协同开发的空间,帮助查询已存在的产品数据模式或理念,并支持企业内部或者企业间的信息共享与交换,形成新产品的并行协同开发。MVC 设计模式带来更好的软件结构和代码重用,将模型、视图和控制器的构件分离开来 2。 Struts 利用控制器来分离模型和视图,达到一种层间松散耦合的

5、效果。Hibernate为 Java 提供了 OR(对象/ 关系)持久化机制和查询服务。Hibernate 其将 Java 中的对象与对象关系,对应到关系型数据库中的表与表之间的关系。Spring 的核心是一个轻量级容器,使得组件之间的依赖达到最小,进而提高组件的重用性。Java 以其与平台无关、安全、功能强大的网络应用等能力使得 Java 成为一种 Web 上的理想工具,为解决 Web 上数据库应用提供了较好的可能 3。运用 Java 技术建立这个地铁车体设计平台,需要考虑建立用户接口、处理业务逻辑和储存数据等问题。1 设计平台结构采用 Struts+Spring+Hibernate 实现地

6、铁车身设计平台,如图 1 所示。其中表示层用Struts,业务层用 Spring,而持久层则用 Hibernate 实现。客 户 端 浏 览 器S Q L s e r v e r 数 据 库视 图( V i e w e r )控 制 器( C o n t r o l l e r )E v e n tH T T P 请 求U p d a t eH T T P 响 应项 目 管 理人 员 组 织管 理C A D 模 型 和相 关 文 件C A E 模 型 和相 关 文 件K B E 和知 识 管 理系 统 集 成工 具基 于 W e b 的 产 品 数 据 管 理 系 统表 示 层业 务 层持 久

7、 层H i b e r n a t eO R MS t r u t s -c o n f i g . x m lF o r w a r d图 1 地铁车体设计平台结构图Web 应用在层的划分上至少被分成 4 层,分别为:表示层、持久层、业务层和域模块 4。在处理程序上都应有明确的责任,在功能上与其他层不混合,并且层与层之间需要分开,它们之间通过通信接口联系。2 创建的工程目录为了方便开发和测试,建立以下工程目录。图 2 工程目录其中:(1) project:为本信息集成的根目录;(2) common:系统用到的 sun 公司 j3d 类库存放地址;(3) decorators:系统布局控制的网

8、页存放目录。(4) images:系统所需要的图片的存放目录;(5) scripts:系统所需 JavaScript 的存放目录;(6) styles:系统样式的存放目录;(7) WEB-INF:本系统中主要涉及文件存放目录,如 classes,lib ,pages,src 等。classes 目录为 Java 编译后生成的代码存放地址;lib 目录为本系统所需要的类库的存放地址;pages 目录为菜单、模版、栏目等网页的存放位置。3 设计平台架构3.1 表示层一个典型的 Web 应用末端是表示层(Presentation Layer) 。Struts 所提供的org.apache.strut

9、s.Action 使用于负责处理业务逻辑。基于 Struts 构架的 Web 应用程序符合 JSP Model 2 的设计标准,是 MVC 设计模式的一种变化类型。Struts 架构包括控制器(Controller) ,同时整合了其他一些技术实现模型层(Model )和视图层(View) 。在模型层,Struts 与数据库访问技术结合,包括 EJB,JDBC和 OJB。在视图层,Struts 与 JSP、Velocity Templates 和 XSL 等表示层组件结合。Struts 框架如下图:客户端浏览器控制器Sevlet视图JSP业务逻辑Action模型Application state

10、EventHTTP 请求DispatchForwardUpdateHTTP 响应Get图 3 Struts 的框架结构Struts 可以实现以下功能:(1) 管理用户的请求,做出相应的响应。(2) 提供一个控制器(Controller) ,委派调用业务逻辑和其他上层处理。(3) 处理异常并抛给 Struts Action。(4) 为显示提供一个模型。(5) UI 验证。3.2 持久层Web 应用的另一个末端是持久层(Persistence Layer) ,这里往往是程序最容易失控的地方。系统的持久层不但需要大量的调试时间,而且还经常因为缺少功能变得难以控制。Hibernate 是“ 对象/关系

11、映射” (Object/Relational Mapping)的解决方案,简写为 ORM,作为 ORM 开源框架能很好地解决了这类问题。下面是持久层需要实现的功能:(1) 查询对象的相关信息的语句。Hibernate 通过一个 OO(object oriented)查询语言(HQL )或者正则表达的 API 来完成查询。HQL 作为一种对象查询的自然语言,非常类似于 SQL 里的表和列用对象和它的字段代替。(2) 如何存储、更新、删除数据库记录,支持父/子、时间处理、继承和多态性。3.3 业务层Web 应用的中间部分是业务层(Business Layer)或者服务层。从编码的角度来看,这层往往

12、容易被忽视,导致大量的代码紧密耦合,随着时间的推移,这些代码会渐渐的变得难以维护,针对这一问题,使用框架 Spring,又被称为 micro-containers(微容器) ,可很好的将对象搭配起来。Spring 的核心是一个轻量级容器,实现了 IoC(Inversion of Control,简称控制反转)模式,帮助程序设计人员完成组件之间的依赖关系注入,使得组件之间的依赖达到最小,进而提高组件的重用性。业务层实现的功能:(1) 处理应用程序的业务逻辑和业务校验。(2) 管理事务。(3) 允许与其他层进行相互作用的接口。(4) 管理业务层级别的对象依赖。(5) 在显示层和持久层之间增加一个灵

13、活的机制,使得它们之间不直接联系在一起。(6) 通过揭示从显示层到业务层之间的 Context 得到业务服务(business services ) 。(7) 管理程序的执行(从业务层到持久层) 。3.4 域模块层开发的 Web 应用需要一个对象集合,使它在不同层之间移动。域模型层( Domain Model Layer)由实际需求中的业务对象组成。开发者在这层不用管那些数据传输对象(Data Transfer Object) ,而仅关注域对象( domain object) 。例如,Hibernate 允许将数据库中的信息存入域对象(domain objects) ,在连接断开的情况下将这些

14、数据送到用户界面层显示,而对象也可以返回给持久层,进而在数据库里更新。这一特点使得 Java 开发者能很自然运用面向对象编程(Object-Oriented Programming ) ,而不需要附加的编码。4 系统配置4.1 Struts 配置Struts 用配置文件来定义应用的内容,比如链接的逻辑名称。Struts 在启动的时候读入配置文件,用来创造所需的对象数据库。各种 Struts 组件都被引用到数据可中提供框架的各种服务。配置的默认名称是 struts-config.xml。在登陆界面中,应用了一个 login 的 forward。在配置文件中是这样定义的,如下:这里 login 是

15、个关键字,用来查找链接的实际路径。在这里引用了 Struts action。4.2 Hibernate 配置在本例中,Hibernate 配置文件可以有两种格式,一种是 Hibernate.properties ,另一种是 Hibernate.cfg.xml。后者稍微方便一些,当增加 hbm 映射文件的时候,可以直接在 Hibernate.cfg.xml 里面增加,不必像 Hibernate.properties 必须在初始化代码中加入。在 Hibernate 的 src 目录下有一个 Hibernate.properties 模板,hibernate.query.substitutions

16、true 1, false 0, yes Y, no N它是指在 Hibernate 里面输入 true 的时候,Hibernate 会转化为 1 插入数据库,当你在Hibernate 里面输入 false 的时候,Hibernate 会转化为 0 插入数据库,后面的 Y,N 同理。 对于某些数据库,例如 Oracle 来说,没有 boolean 数据类型,就是采用 1 代表 true,0 代表false,因此使用这个配置在 Hibernate 里面直接用 true/false 会非常直观。hibernate.dialect net.sf.hibernate.dialect.MySQLDial

17、ecthibernate.connection.driver_class com.microsoft.jdbc.sqlserver.SQLServerDriverhibernate.connection.url jdbc:microsoftqlserver:/localhost:1433;DatabaseName=projecthibernate.connection.username sahibernate.connection.password上面连接的是 SQLServer 2000 数据库。hibernate.connection.pool_size 1hibernate.statem

18、ent_cache.size 25在默认情况下,采用 Hibernate 自带的连接池的配置参数。采用简单的 Hibernate 连接池,一般情况下建议采用 App Server 的连接池,App Server 连接池的 DataSource 的 JNDI名称为“mypool“ ,配置如下: hibernate.dialect net.sf.hibernate.dialect.SQLServerDialecthibernate.connection.datasource mypoolhibernate.connection.provider_class net.sf.hibernate.con

19、nection.DatasourceConnectionProvider其它参数就不必写,因为已经在 App Server 配置连接池的时候指定好了。hibernate.show_sql false是否将 Hibernate 发送给数据库的 SQL 显示出来。当调试 Hibernate 的时候,让Hibernate 打印 SQL 语句,可迅速解决这一问题。hibernate.connection.isolation 4指定数据库的隔离级别,往往不同的数据库有自己定义的隔离级别,未必是Hibernate 的设置所能更改的,所以也不必去管它。hibernate.jdbc.fetch_size 50

20、 hibernate.jdbc.batch_size 25这两个选项分别指明捕获记录条数和批量处理记录条数,这个值的大小将影响 Hibernate的 CRUD(增删改查)性能。4.3 Spring 配置在 Spring 中指定的 XML(applicationContext.xml)文件用来记录 JavaBeans 的别名和路径。当需要找到某个 JavaBeans 时,假如它在 XML 文件中的别名叫 GetData,那么只需在程序中调用 getBean(GetData) ,Framework 负责创建获得该对象,并送给需要这个对象的类。Spring 的配置文件中需要申明 JavaBean 的

21、别名,类地址,以及事务处理的属性。PROPAGATION_REQUIREDPROPAGATION_REQUIREDPROPAGATION_REQUIREDPROPAGATION_REQUIRED,readOnly本系统中,利用 Spring 整合并管理 Hibernate,另外业务逻辑层中的 JavaBeans 也被纳入 Spring 的容器管理中,使得 Spring 的配置文件过于复杂和庞大。为了避免这种情况,系统中将这个配置文件拆分成 2 个文件。Spring 管理配置 Hibernate Beans 的配置文件:applicationContext-hibernate.xml。Sprin

22、g 管理配置业务逻辑层 JavaBeans 的配置文件:applicationContext-service.xml。5 结语本文运用 Struts, Spring 和 Hibernate 技术实现地铁车身设计平台,并进行了参数优化,探讨了在设计过程中上述三种技术的整合和技术集成问题。随着用户对象的增多、系统需要进一步完善,并且需要考虑安全性问题。参考文献1 周翊民.我国城市轨道交通技术装备发展水平与制造能力.城市轨道交通研究J., 2006( 10):3-7.2 赖英旭,刘增辉,李毛毛.MVC 模式在 B/S 系统开发中的应用研究.微计算机信息J, 2006,22( 30):62-64. 3 李勇奇,卢昱. Web 上基于 Java 的数据库应用研究.计算机工程与应用J.1999(01): 49-51.4 曹广鑫,王谢华,王建凤.Struts 数据库项目开发宝典M.北京:电子工业出版社. 2006.1:359-361

本站链接:文库   一言   我酷   合作


客服QQ:2549714901微博号:道客多多官方知乎号:道客多多

经营许可证编号: 粤ICP备2021046453号世界地图

道客多多©版权所有2020-2025营业执照举报