没有合适的资源?快使用搜索试试~ 我知道了~
利用JSF、SpringFramework和Hibernate构建Web应用的实例讲述
需积分: 9 74 下载量 113 浏览量
2007-07-12
14:55:47
上传
评论
收藏 220KB DOC 举报
温馨提示
试读
19页
利用JSF、SpringFramework和Hibernate构建Web应用的实例讲述.
资源推荐
资源详情
资源评论
利用 JSF、SpringFramework 和 Hibernate 构建 Web 应用的实例讲述
(来源:http://blog.csdn.net/ylong/archive/2004/07/24/50810.aspx)
原作者 Derek Yang Shen
原文链接
源码链接
翻译本人
点评该文是我看的第一篇讲述 ! 与 "# 整合的文章,是一个很好的范例,比较适合于
对 "# 有了一定了解人学习。其中大量篇幅讲述的 !,对 ! 感兴趣的也可以来看看。
声明该文是本人第一次翻译大块头的文章,由于本人才疏学浅、英语较烂,但考虑到和我一
样不喜欢看洋文的大有人在,遂用近 小时的时间翻译该文,对一些技术名词和不会翻译的地
方用原文代替,其中难免有很多错误,欢迎批评指正。
译文
! 是一种新的用于构架 $$ 应用用户界面的技术,它尤其适合于基于 %&' 架构的应用中。
虽已有很多文章介绍过了 !,然而它们大多从理论高度来介绍 ! 而不是面向于实际应用。
目前对于实际应用, ! 仍有很多问题没有解决,例如:如何使 ! 适应于 %&' 整体构架中?
如何将 ! 与其他 框架整合起来?是否应该将业务逻辑放置在 ! 的 ()"#($" 中?
如何处理 ! 中的安全机制?更为重要的是如何利用 ! 构架现实世界的 *$( 应用?
本文将涉及到上面的这些问题,它将演示如何将 !、 "# 和 +($"$ 整合在一起,构架
出一个名为 '# 的在线产品价目系统。利用该 ,$,本文涵盖了 *$( 应用开发的每一
个阶段,包括需求收集、分析,技术选择,系统架构和实现。本文讨论了在 '# 中涉及
到的各种技术的优点和缺点并展示了一些关键部分的设计方法。
本 文 的 对 象 是 从 事 基 于 $$ 的 *$( 应 用 架 构 人 员 和 开 发 人 员 , 它 并 不 是 对
!、 "#!$) 和 +($"$ 的简单介绍,如果对这些领域不甚了解,请参看相关
资源。
该范例的功能需求
'# 是一个现实世界的 *$( 应用,我首先描述 '# 的需求,在通篇的技术决策和架
构设计时都将涉及到本部分。
在设计 *$( 应用的第一阶段是收集系统的功能需求,范例应用是一个典型的电子商务应用系
统 , 用 户 可 以 浏 览 产 品 的 # 并查看产品的详细情况,而管理员可以管理产品的
#。通过增加一些其他功能,如 "$"- 管理和订单处理等,该应用可成为一个成熟
的电子商务系统。
Use cases
.$$ 分析被用来展示范例应用的功能需求,图 就是该应用的 /$$ 图。
0000
/$$ 图用于表示系统中的 以及可能进行的 $",在该应用中将有七个
/$$,用户能够浏览产品 # 和查看产品的详细情况,一旦用户登录到系统中,她
将成为管理员,从而可以创建新的产品,编辑已存在的产品或者删除老的产品等。
Business rules
'# 必须符合以下 (/"$/$
每个产品必须具有唯一的 1,
每个产品必须属于至少一个 category
产品 1, 一旦创立不得修改
Assumptions
我们在系统的设计和实现中做以下假定:
英语讲是缺省语言,且不需事先国际化
在 '# 不讲不会超过 2 个产品
# 将不会被频繁的修改
Page ow
图 显示了所有的 '# 的 #$ 以及它们之间的 "" 关系:
0000
该应用中存在两组 #$:公开的 "$"$ 和用于管理的 ""$,其中 ""$ 只能被那
些成功登录到系统的用户访问。 3/ /- 不作为一个单独的 #$ 展示给用户,它
显示在 '##$ 中的 $ 中。3/4 只对管理员可视,它包含用于创建、编辑
和删除产品的链接。
图 5 是一个 '# 页面的示意图,理想状况下,在需求文档中应该包含每一页的详细示意图。
00000000
构架设计
*$( 应用开发的下一个阶段是构架设计,它包括将应用划分为多个功能组件并将这些组件分割
组合成层,高层的构架设计应该中立于所选用的特定技术。
多层架构
多层架构是将整个系统清晰的分为多个功能单元:$"、$$""、(/"$
#、"$#" 和 61 ,这将确保职责得到清晰的划分,使得系统更易于维护和扩展。具
有三层或等多层的系统被证明比 ' 模型具有更好的伸缩性和灵活性。
$" 层是使用和表示数据模型的地方,对于一个 *$( 应用,$" 层通常是浏览器,基于浏
览器的瘦客户端不包含任何表示逻辑,它依赖于 $$"" 层。
$$"" 层将 (/"$# 层的服务展示给用户,它应知道如何处理用户的请求,如
何同 (/"$# 层交互,并且知道如何选择下一个视图显示给用户。
(/"$# 层包含应用的 (/"$($ 和 (/"$$$。它接受来在于
$$"" 层的请求、基于请求处理业务逻辑。业务逻辑层组件将受益于系统级的服务,
如安全管理、事务管理和资源管理等。
"$#" 层是介于 (/"$# 层和 61 层之间的桥梁,它封装了与 61 层交互的逻辑。
有时,将 "$#" 层和 (/"$# 层合称为中间层。
剩余18页未读,继续阅读
资源评论
星辰
- 粉丝: 29
- 资源: 77
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功