- 1
- 0
- 约8.95千字
- 约 7页
- 2018-03-07 发布于河南
- 举报
使用struts spring hibernate组装你的web应用架构
没有 百度文库财富值 请到
文库帮手网
免费帮下载 百度文库积分 资料
本文由0xwj32ic6i贡献
doc1。
使用 struts+spring+hibernate 组装你的 web 应用架构
其实,就算用 Java 建造一个不是很烦琐的 web 应用,也不是件轻松的事情。
在构架的 一开始就有很多事情要考虑。 从高处看,摆在开发者面前有很多问题:要
考虑是怎样建立用户 接口?在哪里处理业务逻辑? 怎样持久化的数据。 而这三层构
架中, 每一层都有他们要仔细考 虑的。 各个层该使用什么技术? 怎样的设计能松
散耦合还能灵活改变? 怎样替换某个层而不 影响整体构架?应用程序如何做各种级
别的业务处理(比如事务处理)?
构架一个 Web 应用需要弄明白好多问题。 幸运的是,已经有不少开发者已经遇
到过这类 问题,并且建立了处理这类问题的框架。 一个好框架具备以下几点: 减轻
开发者处理复杂的问 题的负担(不重复发明轮子); 内部有良好的扩展; 并且有
一个支持它的强大的用户团体。 好的构架一般有针对性的处理某一类问题,并且能将
它做好(Do One Thing well)。 然而, 你的程序中有几个层可能需要使用特定的框
架, 已经完成的 UI(用户接口) 并不代表你也可以把 你的业务逻辑和持久逻辑偶合
到你的 UI 部分。 举个例子, 你不该在一个 Controller(控制器) 里面写 JDBC 代
码作为你的业务逻辑, 这不是控制器应该提供的。 一个 UI 控制器应该委派给 其它
给在 UI 范围之外的轻量级组件。 好的框架应该能指导代码如何分布。 更重要的是
,框架 能把开发者从编码中解放出来,使他们能专心于应用程序的逻辑(这对客户来
说很重要)。
这篇文章将讨论怎样结合几种著名的框架来使得你的应用程序做到松弛耦合。
如何建立你的架构, 并且怎样让你的各个应用层保持一致。 ?如何整合框架以便让
每个层在以一 种松散偶合的方式彼此作用而不用管低层的技术细节?这对我们来说真
是一种挑战。 这里讨论 一个整合框架的策略( 使用 3 种受欢迎的开源框架) :表示
其他 FrameWork 替换只要能得到同样的效 果。 见图 1 (框架组合示意图)
应用程序的分层
大部分的 Web 应用在职责上至少能被分成 4 层。这四层是: presentation (
每个层在处理程序上都应该有一 项明确的责任, 而不应该在功能上与其它层混合,并
且每个层要与其它层分开的,但要给他们之 间放一个通信接口。 我们就从介绍各个
层开始,讨论一下这些层应该提供什么,不应该提供什 么。
表示层(The Presentation Layer) 表示层
一般来讲,一个典型的 Web 应用的的末端应该是表示层。 很多 Java 发者也理
此, 我们很赞成使用 Struts 这样的框架。
下面是 Struts 所负责的:
* 管理用户的请求,做出相应的响应。
* 提供一个 Controller ,委派调用业务逻辑和其它上层处理。
* 处理异常,抛给 Struts Action
* 为显示提供一个模型
* UI 验证。
以下条款,不该在 Struts 显示层的编码中经常出现。 它们与显示层无关的。
* 直接的与数据库通信,例如 JDBC 调用。
* 与你应用程序相关联的业务逻辑以及校验。
page 1
* 事物管理。
在表示层引入这些代码,则会带来高偶合和麻烦的维护。
持久层(The Persistence Layer) 持久层
典型的 Web 应用的另一个末端是持久层。这里通常是程序最容易失控的地方。
开发者总是低估 构建他们自己的持久框架的挑战性。 系统内部的持续层不但需要大
量调试时间, 而且还经常缺少 功能使之变得难以控制,这是持久层的通病。 还好有
va 提供了 OR 持久化机制和查询服务, 它还给已经
熟悉 SQL 和 JDBC API 的 Java 开发者一个学习桥梁,他们学习起来很方便。
ate 并不妨碍你正在使用的 IDE。
请看下面的条目,你在持久层编码中需要了解的。
* 查询对象的相关信息的语句。 Hibernate 通过一个 OO 查
您可能关注的文档
- KSL设计事务所董事长、首席设计师林冠成个人专访.docx
- 商务统计学课件第二章 出版社: 中国人民大学出版社.ppt
- 19VB上机考试.doc
- 读书知识试卷(肖丽芳).doc
- 16 2013中考英语复习 定语从句.docx
- 2012-13年度第二学期九年级语文教学总结.doc
- 语文综合性学习之巷.ppt
- 化妆品化学试题答案.doc
- 马克思原理试题 第四单元.doc
- 变频调速Sensorless control strategy for power smoothing in wind-diesel applications.pdf
- 2026江西南昌市市场监督管理执法稽查局招聘仓库管理人员1人备考题库及一套参考答案详解.docx
- 2026江苏省常州市体育运动学校招聘排球教练1人备考题库及完整答案详解.docx
- 2026江苏苏州张家港农商银行寒假实习招募备考题库及完整答案详解一套.docx
- 2026浙江台州银行1月份招聘备考题库及完整答案详解一套.docx
- 2026江苏扬州市侨城社区(筹)公益性岗位招聘1人备考题库及完整答案详解.docx
- 2026广西桂林市象山区政府招聘编外聘用人员2人备考题库精编答案详解.docx
- 2026江苏南京江北新区退役军人服务中心招聘编外人员6人备考题库及参考答案详解1套.docx
- 2026广西玉林市博白县公安局第一次招聘警务辅助人员29人备考题库及一套完整答案详解.docx
- 2026广西玉林市福绵区樟木供销合作社招聘财务人员2人备考题库精编答案详解.docx
- 2026春季梦想靠岸招商银行西宁分行校园招聘备考题库及答案详解(新).docx
最近下载
- 地下车位租赁协议书通用版.docx VIP
- nsr621rf-d电容器保护测控装置技术使用说明书.pdf VIP
- 19G518-3_门式刚架轻型房屋_钢结构_有吊车_.docx VIP
- 2025公安大学警务硕士真题及答案.docx VIP
- 火电厂烟气脱硫工程调整试运及质量验收评定规程.PDF VIP
- 帝人芳纶应用介绍.doc VIP
- 《黄酒酿造工艺》课件.ppt VIP
- 深度解析(2026)《JBT 8521.2-2025编织吊索 安全性 第2部分:一般用途合成纤维圆形吊装带》:构筑新时代工业安全的核心支柱与前瞻指南.pptx VIP
- 2026房东直租房屋租赁合同.docx VIP
- V03英国深海控制器DSE5220模块操作說明書.pdf
原创力文档

文档评论(0)