一总 发表于 2016-12-31 08:00:04

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 ,希望能给入门的朋友提供帮助。
页: [1]
查看完整版本: Apache CXF 之 HelloWorld