soa,sca

服务构件架构(Service Component Architecture) 致力于为使用广泛的编程语言来构造服务构件提供一种编程模型,并且也为把这些服务构件组装为一个业务上的解决方案提供了一种模型,这种组装的活动正是采用面向服务的架构(service-oriented architecture)来搭建应用系统的核心。SCA是一种全新的、跟语言无关的编程模型,这种面向服务构件的编程模型可以大大简化客户的编程,提高应用的灵活性,将会对现有软件开发方式产生颠覆性的影响。
服务数据对象(Service Data Objects)致力于为应用系统中处理数据提供统一的方式,而不论数据的来源、格式是什么样的。SDO提供了一种对数据库和对服务来说统一的数据处理方式,它也提供了相应的机制,用来实现当数据同其来源分离时的处理。
SCA和SDO都可以独自使用,没有规定说在同一个应用程序中必须同时使用两种技术。然而SCA和SDO可以结合起来一起使用,从而为采用面向服务的架构搭建应用系统提供一种强有力的、灵活的方式。
SCA是为基于SOA思想的系统而制定的开发、部署规范,它首先必然是具备了SOA的一系列的优点,像跨语言、分布式、以服务的思想构建系统等。SCA对于组件中的服务的调用提供了异步调用的支持,在异步调用的支持上SCA的考虑也较为全面。
  使用SOA构建业务解决方案主要的优势之一就在于其能按照业务需求的变化和革新快速组装新的解决方案。解决方案组装的关键是包含现有的应用和功能的能力,而不是什么都从头开始。的确,只有尽可能地复用现有的功能,才能完成快速开发的目标。
  SCA一种是使用SOA的业务解决方案的编程模型。SCA提供了这么一个特性,使得将已存在的功能组装成新的解决方案尽可能的简单。该文档检验了这些特性中的一些。
  SCA提供了实现面向服务的架构(SOA)的一个编程模型。
服务组件是SCA中的基本组成元素和基本构建单位,也是我们具体实现业务逻辑的地方。我们可以把它看成是构建我们应用的积木

=================================================================================

 

我都是用 CXF 的,我和你说一下 CXF 怎么调用吧。

1:到 http://cxf.apache.org/download.html 去下载最新的 Apache CXF 包,下载好后解压到某个目录中,比如:d:/apache/cxf-2.1.4 中;

2:在控制台中进入 d:/apache/cxf-2.1.4/bin 目录,执行这个命令:

wsdl2java -p com.bao.ws -d d:/ws -verbose http://www.ayandy.com/Service.asmx?WSDL

wsdl2java 命令会生成一些封装的类和 SOAP 接口。

-p 参数是个包名,表示生成的类、接口放在什么包下面
-d 是个目录名,生成的包放在什么目录下
-verbose 是在生成代码时产生一些日志输出
最后一个是 WSDL 地址

3:生成好后把这些文件复制到 Eclipse 某个工程的相同包下面去。

4:到 CXF 的 lib 目录中把这些文件加载到 Eclipse 的 classpath 中去:

cxf-2.2.3.jar
geronimo-activation_1.1_spec-1.0.2.jar
geronimo-annotation_1.0_spec-1.1.1.jar
geronimo-jaxws_2.1_spec-1.0.jar
geronimo-stax-api_1.0_spec-1.0.1.jar
geronimo-ws-metadata_2.0_spec-1.1.2.jar
jaxb-api-2.1.jar
jaxb-impl-2.1.12.jar
saaj-api-1.3.jar
wsdl4j-1.6.2.jar
wstx-asl-3.2.8.jar
XmlSchema-1.4.5.jar

4:写个 Test 类测试一下:

Java code
   
   
import javax.xml.namespace.QName; import javax.xml.ws.Service; import javax.xml.ws.soap.SOAPBinding; public class WebServiceTest { private static final QName SERVICE_NAME = new QName( " http://tempuri.org/ " , " ServiceSoap " ); private static final QName PORT_NAME = new QName( " http://tempuri.org/ " , " ServiceSoapPort " ); public static void main(String[] args) { Service service = Service.create(SERVICE_NAME); String endpointAddress = " http://www.ayandy.com/Service.asmx " ; service.addPort(PORT_NAME, SOAPBinding.SOAP11HTTP_BINDING, endpointAddress); ServiceSoap hw = service.getPort(ServiceSoap. class ); ArrayOfString as = hw.getWeatherbyCityName( " 上海 " , TheDayFlagEnum.TODAY); for (String str : as.getString()) { System.out.println(str); } } }

需要注意一下的是,我用的 CXF 2.1.3 生成的 Service 类有个 bug,只要把这个类 import 中的这行:import javax.xml.ws.Service; 去掉就行了。
提供的源码资源涵盖了安卓应用、小程序、Python应用和Java应用等多个领域,每个领域都包含了丰富的实例和项目。这些源码都是基于各自平台的最新技术和标准编写,确保了在对应环境下能够无缝运行。同时,源码中配备了详细的注释和文档,帮助用户快速理解代码结构和实现逻辑。 适用人群: 这些源码资源特别适合大学生群体。无论你是计算机相关专业的学生,还是对其他领域编程感兴趣的学生,这些资源都能为你提供宝贵的学习和实践机会。通过学习和运行这些源码,你可以掌握各平台开发的基础知识,提升编程能力和项目实战经验。 使用场景及目标: 在学习阶段,你可以利用这些源码资源进行课程实践、课外项目或毕业设计。通过分析和运行源码,你将深入了解各平台开发的技术细节和最佳实践,逐步培养起自己的项目开发和问题解决能力。此外,在求职或创业过程中,具备跨平台开发能力的大学生将更具竞争力。 其他说明: 为了确保源码资源的可运行性和易用性,特别注意了以下几点:首先,每份源码都提供了详细的运行环境和依赖说明,确保用户能够轻松搭建起开发环境;其次,源码中的注释和文档都非常完善,方便用户快速上手和理解代码;最后,我会定期更新这些源码资源,以适应各平台技术的最新发展和市场需求。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值