- 1、本文档共30页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
1.2宠物店网上商店.doc
Sun J2EE 宠物店例子
作者: 动物园的猪
2002.7.26
系统架构统览
petstore1.3是一个集客户购物,下订单,管理一体的例子!
现实的系统不会是这样单贝儿的,大多数的系统要和多个数据源和其他的EIS(企业信息系统)打交道的。这些外部系统可能是资产信息,ERP。也有可能是一个别的公司的WebService(这东东最近太XX热了)。屁如说,订单的提交可能是一个公司,信用卡服务可能另外的公司,运送又是一个公司。
Petstore1.3划分成了多个模块,松耦合的设计架构,允许可以和多个数据源,EIS进行交互。这个例子,分成4个部分:
web购物站点
管理
看销售统计,手工接受/拒绝订单,界面也是个web应用
订单处理
通过JMS接受/处理订单消息(xml的)
用java mail来通知客户
通过JMS发订单给供应商
为何订单数据库
供应商
通过JMS接受订单
派送货物给用户
提供一个基于web的库存管理
维护库存数据库
宠物店网上商店
通过浏览器,让客户可以浏览,把货物放入购物车,创建账户/登陆账户,创建订单,通过信用卡支付
宠物店走一遭
这章代表了一个用户的视图,他看到的是个啥东西,也就是所说的业务建模。
开始窗口
开始界面吧,呵呵,干啥呢:很多功能,运行管理程序;进入宠物店;等,你一点进入的恋接吧,就激活了”mail.screen”的URL请求诶。
欢迎窗口
这些可爱的宠物的数据都有了,准备一下,得,显示吧,就下面的这个画面。这个画面其实是个模板组装的,布局挺好看的吧,呵呵。
这个屏幕允许你浏览大类,登录,维护帐户信息(如果你已经登录),改变语言设置。语言切换是通过一个美国,日文国旗图标恋接实现的,可惜没中文?。动物图标代表了种类,鱼代表鱼,狗代表狗,。。。,点点狗,一看,嘿,恋接是”/product.screen?product_id=DOGS”。
种类窗口( HYPERLINK /blueprints/guidelines/designing_enterprise_applications_2e/sample-app/sample-appa7.html Category Screen)
得,列出这个种类下,都有哪些产品,点某个产品,就进去看看这个产品的条目下,有哪些具体的货物在架,选个吧,然后就可以进去看了
货架/产品窗口
产品屏幕显示所有的产品内容,右面列出了单价,并且有一个Add to Cart的加入购物车的链接。
货物item窗口
显示每个内容(item)的详细信息,有个链接可以让你把它放入购物车。
购物车窗口
允许用户更改item数量,还有个remove,可以删除item, “Proceed to Checkout”链接带你去订单屏幕,当然,如果你没有登录,登录窗口会在你点击之后出现。
登陆窗口
登录窗口允许存在的用户登录,或者创建一个新的帐户和客户。
账户信息窗口
用来填写新创建的账户的详细信息,同时也用来维护某个帐户的详细信息。
订单信息窗口
用来让用户填写订单的发送信息,默认值是当前登录的用户的客户信息中的地址信息,当然你可以修改。一旦点submit,就会创建一个订单,发送到订单处理中心。
订单完成窗口
概要,高层设计吧,我有何选择?
使用应用框架
小的应用经常不使用应用框架,管理简单的请求转发,凌乱的编码习惯.大的应用常常使用MVC应用框架,譬如WAF.这样的架构和MVC的功能分离使得应用程序具有更好的重用性,和可维护性.
WEB层处理商业逻辑 vs EJB层处理
许多应用把商业处理逻辑放到了web层.而更大规模的应用常常把处理逻辑放到EJB层,来提供一个稳定的,大规模的,基于组件的开发模式,以及各种稳定的企业特性,如,持续性管理,安全管理,异步通讯,事务处理等特性.
本地 vs 分布处理. 企业EJB在一个分布架构中
通过远程接口来访问EJB.远程EJB提高了稳定性和性能,同时因为是远程调用,要求EJB必须是粗谷粒的。而本地EJB和客户端再同一个虚拟机上,由于速度快,可以做到细谷粒。petstore大量采用了local EJB来提高性能。
声明的或者是编程实现事务控制
声明的方式,使得管理更容易,但是呢,编程的方式提供了更高的控制。宠物店在显示数据的时候使用了程序控制,而在更新数据的时候,采用了声明方式。
同步和异步通讯
同步应用适用于适当的时间完成一个特定结果。异步呢,管理起来比较复杂,但对于松耦合以及可信度不是很高的,并行的操作,很适合。大多数应用使用同步异步结合的方式。例如,宠物店使用同步方式读取货品的目录-catalog。而对于发送订单,使用了异步方式,因为这需要很长时间,而且,订单处理中心不一定在运作过程中。
宠物店的结构
宠物店的服务从上而下。最上层是WAF(web
您可能关注的文档
最近下载
- 牙齿健康和龋齿预防科普知识ppt(共67张PPT).pptx VIP
- 2024年10月 政法干警锻造新时代政法铁军专题研讨班发言材料.docx VIP
- 反恐验厂-危机管理和应急恢复计划.doc
- 2024.10 政法干警锻造新时代政法铁军专题研讨班发言材料.docx VIP
- 六年级上册快乐读书吧知识测试题及答案.pdf VIP
- 北京字节跳动科技有限公司运营模式分析及发展趋势预测研究报告.docx VIP
- 《财务风险管理—以乐视公司为例》10000字.docx
- 人教八年级上册物理《光的反射》PPT教学课件.pptx
- 信息资源管理专业毕业设计论文:信息资源管理在学校教育中的应用研究.docx VIP
- 网络安全项目网络建设方案.doc
文档评论(0)