zoukankan      html  css  js  c++  java
  • Apache CXF开发Web Service 理解CXF Frontends之CodeFirst

    CXF前端(Frontend)是编程使用的API,用来开发和对外暴露Web Services。CXF提供两种类型的前端(Frontend):JAX-WS和简单前端(Simple Frontend)。本节将详细介绍JAX-WS前端。

    JAX-WS前端

    Code-First方式

    创建Service Endpoint Interface ( SEI)

    添加Java注解

    发布服务

    开发客户端

    运行Web Service

    JAX-WS前端

    CXF支持由Java Community Process (JCP)提供的JAX-WS 2.0 API规范。CXF实现了JAX-WS规范。

    JAX-WS提供了两种方式来创建Web Service:Code-First和Contract-First。

    Code-First:先创建Java类然后基于Java类生成Web Service组件。一般用于输入/输出对象格式简单,并希望快速部署应用。Code-First的方式正如开发普通的JAVA应用一样,不用关心WSDL和XSD的生成,也不必维护JAVA对象和XML元素的映射关系。只需要在JAVA类中注明,CXF中的工具Java2WSDL会为你完成这些工作。

    Contract-First:开发者基于WSDL规范来编写将要暴露的Web Service。Contract-First的方式适用于你已经定义好Web Service操作的输入/输出的消息格式,或者想更好的控制XML与JAVA对象之间的映射关系。Contract-First开发模式要求你精通XSD和WSDL规范。

    想更深一步了解请看:《代码优先(Code-First)和契约优先(Contract-First)的比较

    Code-First方式:

    Code-First方式需求完成的工作有:

    创建Service Endpoint Interface ( SEI)

    添加Java注解

    发布服务

    开发客户端

    创建Service Endpoint Interface ( SEI):

    Service Endpoint Interface与JAVA Interface类似,定义了业务的服务方法。你可以从零开始开发SEI,或者将现有的业务功能转换为基于服务的组件。

    从零开始就是说,没有任何代码或WSDL约束,重新开发Web Service。适用于先创建接口后编写实现代码。将现有代码转换,就是利用已经存在的业务功能,将其转换为基于服务的组件。大部分情况是我们拥有已经实现好的业务逻辑,只是需要将其暴露为Web Service方法。我们可以开发SEI并定义哪些业务方法需要暴露出去,很轻松的实现普通业务到基于服务的转变。

  • 相关阅读:
    Android源码编译jar包BUILD_JAVA_LIBRARY 与BUILD_STATIC_JAVA_LIBRARY的区别(一)
    模块化开发
    最近理解记忆
    ES6语法—— 模块化开发之import和export命令详解
    关于阿里图标库Iconfont生成图标的三种使用方式(fontclass/unicode/symbol)
    2.新知-display:inline-block元素之间空隙的产生原因和解决办法
    规避同源
    vue总结
    vue组件通信
    vue 多次学习
  • 原文地址:https://www.cnblogs.com/bjanzhuo/p/3575995.html
Copyright © 2011-2022 走看看