Apache CXF 之 HelloWorld

    介绍: Apache CXF = Celtix + XFire,Apache CXF 的前身是叫Apache CeltiXfire,现在已经正式更名为Apache CXF 了,以下简称CXF。CXF继承了 Celtix 和 XFire 两大开源项目的精华,提供了对 JAX-WS全面的支持,并且提供了多种 Binding 、Data Binding、Transport 以及 Format的支持,并且可以根据实际项目的需要,采用 Code First 或者 WSDL First 来轻松地实现 Web Services 的发布和使用。

一、从http://cxf.apache.org/得到CXF的jar包支持

二、创建接口“HelloWorldService.java”:
package  org.yifeng.service;

public   interface  HelloWorldService  {
    String sayHi(String text);
}


三、实现接口”HelloWorldServiceImpl.java“:
package  org.yifeng.service.impl;

import  org.yifeng.service.HelloWorldService;

public   class  HelloWorldServiceImpl  implements  HelloWorldService  {
    
public String sayHi(String text) {
        
return "欢迎 " + text +",学习Apache CXF.";
    }

}


四、发布服务接口”Server.java“:
package  org.yifeng.server;

import  org.apache.cxf.frontend.ServerFactoryBean;
import  org.yifeng.service.HelloWorldService;
import  org.yifeng.service.impl.HelloWorldServiceImpl;


public   class  Server  {
    
public static void main(String[] args) {
        
        
// Create our service implementation
        HelloWorldServiceImpl helloWorldImpl = new HelloWorldServiceImpl();

        
// Create our Server
        ServerFactoryBean svrFactory = new ServerFactoryBean();
        svrFactory.setServiceClass(HelloWorldService.
class);
        svrFactory.setAddress(
"http://localhost:9000/Hello");
        svrFactory.setServiceBean(helloWorldImpl);
        svrFactory.create();
    }


}

 

五、创建Client,访问服务接口“Client.java”:

package  org.yifeng.client;

import  org.apache.cxf.frontend.ClientProxyFactoryBean;
import  org.yifeng.service.HelloWorldService;


public   class  Client  {
    
public static void main(String[] args) {
        
        ClientProxyFactoryBean factory 
= new ClientProxyFactoryBean();
        factory.setServiceClass(HelloWorldService.
class);
        factory.setAddress(
"http://localhost:9000/Hello");
        HelloWorldService client 
= (HelloWorldService) factory.create();
        System.out.println(client.sayHi(
"周大庆"));
    }


}

六、结果:
欢迎,周大庆 学习Apache CXF.

呵呵,简单吧,这就是WebService ,希望能给入门的朋友提供帮助。

你可能感兴趣的:(apache,Web,webservice)