知识大全 Web Service实现SOA的关注点分离
Posted 账户
篇首语:成年人的平和,一半是理解,一半是算了。本文由小常识网(cha138.com)小编为大家整理,主要介绍了知识大全 Web Service实现SOA的关注点分离相关的知识,希望对你有一定的参考价值。
Web Service实现SOA的关注点分离 以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!
关注点分离(separation of concerns)是面向服务的架构(Service Oriented Architectures SOA)的核心原则 令人遗憾的是 该原则在实现SOA服务时常常起不到作用 我们通常会看到带有多个关注点(如安全 事务管理)的巨大的实现类 使用业务逻辑记录所有混合在一起的关注点 使用Spring Framework和Aspect Oriented Programming (AOP)原则 我们可以将关注点分离 以用于服务实现
本文中我们将演示如何使用Apache Axis和Spring来开发Web service 并使用Acegi Security对其进行保护——同时保持关注点很好地分离
动机和设计本文中我们将使用的示例是名为FundsTransferService的服务 银行使用该服务将资金从一个账户转移到另一个账户 可以在本文的参考资料部分找到该服务的WSDL及所有源代码 配置文件和构建文件 我们有意让该服务保持非常简单 以便集中讨论本文更有意义的方面 在本服务的实现中 我们将涉及三个关注点:
Web service管道 用来公开作为服务的功能 用于转移资金的业务逻辑 安全性 用于保证只有经授权的用户才能执行资金转移 而真正的系统很可能是必须处理其他的关注点 如事务管理 日志等
我们想设计这样一种实现 处理每个关注点的代码与其他的代码完全分离 对于Web service管道 我们将使用Axis来公开作为服务的功能 用于将资金从一个账户转移到另一个账户的业务逻辑将封装在一组POJO(Plain Old Java Object)中 将通过Acegi Security框架来提供安全性 我们将使用Spring Framework及其AOP工具把各方面联系起来 使构成该Web service实现的所有代码之间的依赖性减到最小
该实现的设计如图 所示 以黄色表示的对象就是我们需要实现的Web service 以蓝色表示的对象来自Axis;以粉红色表示的对象来自Acegi;以绿色表示的对象来自Spring FundsTransferService是WSDL中所定义的服务接口 为了简化图表 我们将所有Axis类显示为名为Axis Engine的组件 BasicHandler也是Axis类 但由于它对于设计比较重要(稍后详述) 所以单独显示出来 FundsTransferServiceSoapBindingImpl是Axis的生成类 需要实现它来提供服务功能 将直接通过Spring委派业务逻辑POJO AccountMgrImpl(稍后也会对此进行详细解释) AccountMgrImpl与AccountMgr接口捆绑在一起是不错的做法 因为这样就允许我们插入Spring以发挥其作用(尽管有其他方法可以不带接口使用Spring)
相关参考
[摘要]针对水资源短缺和严峻的水污染现状,寻找能有效保障水安全的策略是亟待解决的社会发展问题之一。膜分离技术的高效、操作简单等优点使其在水安全保障方面备受关注。本文介绍了我国水安全问题的内涵和现状,对
[摘要]针对水资源短缺和严峻的水污染现状,寻找能有效保障水安全的策略是亟待解决的社会发展问题之一。膜分离技术的高效、操作简单等优点使其在水安全保障方面备受关注。本文介绍了我国水安全问题的内涵和现状,对
造纸工业是我国水资源消耗大户,造纸废水水量大、有机物含量高、造成的环境污染影响大,对造纸废水治理在全世界范围内都在关注废水回用,以提高水循环利用率,减少水资源消耗和废水排放污染”。据国家环保总局、国家
造纸工业是我国水资源消耗大户,造纸废水水量大、有机物含量高、造成的环境污染影响大,对造纸废水治理在全世界范围内都在关注废水回用,以提高水循环利用率,减少水资源消耗和废水排放污染”。据国家环保总局、国家
造纸工业是我国水资源消耗大户,造纸废水水量大、有机物含量高、造成的环境污染影响大,对造纸废水治理在全世界范围内都在关注废水回用,以提高水循环利用率,减少水资源消耗和废水排放污染”。据国家环保总局、国家
web2.0与Web1.0的区别是什么? 以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧! Web到
JavaWeb服务学习报告—Web简介 以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧! 在网络飞速
知识大全 Web上利用System.Web.Mail发送EMail
Web上利用System.Web.Mail发送EMail 以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下
知识大全 使用 XML Web services 进行 Web 编程
使用XMLWebservices进行Web编程 以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧! X
ASP.NET创建Web服务之管理Web服务状态 以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!