使用CXF开发WebService服务器端接口学习笔记一

发布时间:2020-10-17 发布网站:编程之家
编程之家收集整理的这篇文章主要介绍了使用CXF开发WebService服务器端接口学习笔记一编程之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。

直接上代码

第一步:新建一个接口类

package com.xiaowen;

import javax.jws.WebService;

@WebService
public interface HelloWorld {

	public String say(String str);
}

第二步,建立接口的实现类

package com.xiaowen.impl;

import javax.jws.WebService;

import com.xiaowen.HelloWorld;
@WebService
public class HelloWorldService implements HelloWorld{

	public String say(String str) {
		return "hello"+str;
	}

}
第三步:建立服务端的测试类

package com.xiaowen.test;

import javax.xml.ws.Endpoint;

import com.xiaowen.HelloWorld;
import com.xiaowen.impl.HelloWorldService;

public class HelloWorldTest {
    public static void main(String[] args) {
		System.out.println("webService start");
		HelloWorld implementor=new HelloWorldService();
		//注意一下,下面是我的ip地址,你要自己查看自己的IP地址
		String address="http://192.168.1.100/helloWorld";
		Endpoint.publish(address,implementor);//JDK自带
		System.out.println("webService started");
	}
}

运行程序效果图如下:

注意:Endpoint是Jdk自身实现的WebService

我们使用浏览器访问:http://192.168.1.100/helloWorld?wsdl,效果如下


说明已经成功调用了webservice接口;

这里的wsdl 是 Web Services Description Language的缩写,是一个用来描述Web服务和说明如何与Web服务通信的XML语言。WSDL是Web Service的描述语言,用于描述Web Service的服务,接口绑定等,为用户提供详细的接口说明书。
下面我们介绍使用CXF来实现webservice接口:

配置pom.xml

<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
  <modelVersion>4.0.0</modelVersion>
  <groupId>com.xiaowen</groupId>
  <artifactId>ServiceDemo</artifactId>
  <version>0.0.1-SNAPSHOT</version>
  <dependencies>
    <dependency>
		<groupId>org.apache.cxf</groupId>
		<artifactId>cxf-core</artifactId>
		<version>3.1.5</version>
	</dependency>

  	<dependency>
		<groupId>org.apache.cxf</groupId>
		<artifactId>cxf-rt-frontend-jaxws</artifactId>
		<version>3.1.5</version>
	</dependency>
	
	<dependency>
		<groupId>org.apache.cxf</groupId>
		<artifactId>cxf-rt-transports-http-jetty</artifactId>
		<version>3.1.5</version>
	</dependency>
  </dependencies>
</project>

测试服务类

package com.xiaowen.test;

import org.apache.cxf.jaxws.JaxWsServerFactoryBean;

import com.xiaowen.HelloWorld;
import com.xiaowen.impl.HelloWorldService;

public class HelloWorldTest {
    public static void main(String[] args) {
		System.out.println("webService start");
		HelloWorld implementor=new HelloWorldService();
		//注意一下,下面是我的ip地址,你要自己查看自己的IP地址
		String address="http://192.168.1.100/helloWorld";
		//Endpoint.publish(address,implementor);//JDK自带
		JaxWsServerFactoryBean factoryBean=new JaxWsServerFactoryBean();
		factoryBean.setAddress(address);
		factoryBean.setServiceClass(HelloWorld.class);
		factoryBean.setServiceBean(implementor);
		factoryBean.create();
		System.out.println("webService started");
	}
}
效果图



项目结构图

总结

以上是编程之家为你收集整理的使用CXF开发WebService服务器端接口学习笔记一全部内容,希望文章能够帮你解决使用CXF开发WebService服务器端接口学习笔记一所遇到的程序开发问题。

如果觉得编程之家网站内容还不错,欢迎将编程之家网站推荐给程序员好友。

本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您喜欢交流学习经验,点击链接加入编程之家官方QQ群:1065694478
编程之家官方公众号

微信公众号搜索 “ 程序精选 ” ,选择关注!

微信公众号搜索 “ 程序精选 ”
精选程序员所需精品干货内容!