加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 综合聚焦 > 服务器 > 安全 > 正文

webservice cxf

发布时间:2020-12-16 22:24:45 所属栏目:安全 来源:网络整理
导读:cxf 基础知识 cxf 处理数据 配置?apache-cxf-2.4.0 下载地址:http://download.csdn.net/detail/qq_26437925/9408486 服务端 使用cxf开发web service服务器端 /* 每个web service 组件需要2个部分,接口和实现类 */ (1) 开发一个 webservice业务接口 该接

cxf 基础知识


cxf 处理数据



配置?apache-cxf-2.4.0

下载地址:http://download.csdn.net/detail/qq_26437925/9408486

服务端

使用cxf开发web service服务器端
/*
每个web service 组件需要2个部分,接口和实现类
*/
(1) 开发一个 webservice业务接口
该接口需要用@webservice修饰
(2)开发一个web service实现类
实现类也需要用@webservice修饰
(3)使用Endpoint 发布webservice


1 新建java application 添加jar

??

2 写interface


package org.fkjava.cxf.ws;

import javax.jws.WebService;

@WebService
public interface HelloWorld {
	
	public String sayHi(String name);
	
}

3 写实现类

package org.fkjava.cxf.ws.impl;

import java.util.Date;

import javax.jws.WebService;

import org.fkjava.cxf.ws.HelloWorld;

@WebService(
		endpointInterface="org.fkjava.cxf.ws.HelloWorld",serviceName="HelloWorldWs")
public class HelloWorldWs implements HelloWorld{
	
	@Override
	public String sayHi(String name){
		return name + ",now is " + new Date();
	}
}

4 发布服务

package lee;

import javax.xml.ws.Endpoint;

import org.fkjava.cxf.ws.HelloWorld;
import org.fkjava.cxf.ws.impl.HelloWorldWs;

public class ServiceMain {
	
	public static void main(String args[]){
		// 调用Endpoint的publish方法,发布webservice
		String address = "http://192.168.3.101:8081/crazyit"; // 用自己的ip:端口
		HelloWorld hw = new HelloWorldWs();
		Endpoint.publish(address,hw);
		System.out.println("webservice发布成功");
		
		// 浏览器 http://192.168.3.101:8081/crazyit?wsdl 查看wsdl文档
	}
}




客户端

使用cxf开发web service客户端
/*
每个web service 组件需要2个部分,接口和实现类
*/
(1) 调用cxf提供的wsdl2java工具,根据wsdl文档生成相应的java代码
wsdl webserivice definition launguage
任何语言实现webservice,都需要提供和暴露wsdl文档
(2) 找到wsdl2java生成类中,一个继承了Service的类
该类的实例可当成工厂来使用
(3)调用service子类的实例的getXX,返回远程web service的代理


1?


测试类编写

package lee;

import org.fkjava.cxf.ws.HelloWorld;
import org.fkjava.cxf.ws.impl.HelloWorldWs;

public class ClientMain {

	public static void main(String args[]){
		HelloWorldWs factory = new HelloWorldWs();
		
		//此处返回的只是web service的代理 
		HelloWorld hw = factory.getHelloWorldWsPort();
		
		String rs = hw.sayHi("扣扣");
		System.out.println(rs);
	}
	
}

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读