前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >webservice体系结构中包括_致命框架1第六关

webservice体系结构中包括_致命框架1第六关

作者头像
全栈程序员站长
发布2022-11-08 14:31:40
3260
发布2022-11-08 14:31:40
举报
文章被收录于专栏:全栈程序员必看

大家好,又见面了,我是你们的朋友全栈君。

Web服务可以用来解决跨网络应用集合问题的开发模式,目的是保证不同平台的应用服务可以相互操作

JAX-WS实现WebService

代码语言:javascript
复制
package com.service;

import javax.jws.WebService;

/*
 * 	WebService准备发布的接口
 * 		@WebService注解说明该类为Web服务发布类
 */
@WebService
public interface IWebServiceTest {
	public String webServiceTest(String name);
}
代码语言:javascript
复制
package com.service;

import javax.jws.WebService;

/*
 * 	WebService准备发布的接口实现类
 * 		@WebService注解说明该类为Web服务发布类
 */
@WebService
public class WebServiceImp implements IWebServiceTest{

	@Override
	public String webServiceTest(String name) {
		
		return "欢迎"+name+"访问WebService";
	}

}
代码语言:javascript
复制
package com.service;

import javax.xml.ws.Endpoint;

/*
 * 	使用java支持WebService的类进行发布
 * 			Endpoint.publish("访问路径",接口),
 */
public class Test {
	public static void main(String[] args) {
		System.out.println("start  发布......");
		// 
		IWebServiceTest implementor = new WebServiceImp();
		Endpoint.publish("http://127.0.0.1/ws", implementor);
		System.out.println("持续发布中.......");
	}
}
代码语言:javascript
复制
package com.service;

/*
 * 	在cmd中使用命令:   wsdl2java http://127.0.0.1/ws?wsdl
 * 			实现将发布接口xml文件转换为java文件
 * 	WebServiceImpService为加载发布服务类
 */
public class Test {
	public static void main(String[] args) {
		// 创建该服务类,反射加载发布实现类
		WebServiceImpService wsi = new WebServiceImpService();
		WebServiceImp ws = wsi.getPort(WebServiceImp.class);
		// 调用发布类方法
		String str = ws.webServiceTest("JAX-WS");
		System.out.println(str);
	}
}

CXF实现WebService

代码语言:javascript
复制
package com.service;

import org.apache.cxf.jaxws.JaxWsServerFactoryBean;

/*
 * 	使用CXF支持WebService的类进行发布
 */
public class Test {
	public static void main(String[] args) {
		// 创建CXF支持的类进行服务发布
		JaxWsServerFactoryBean factoryBean = new JaxWsServerFactoryBean();
		System.out.println("strat 发布服务中....");
		IWebServiceTest implementor = new WebServiceImp();
		// 设置地址
		factoryBean.setAddress("http://127.0.0.1/ws");
		// 接口类
		factoryBean.setServiceClass(IWebServiceTest.class);
		factoryBean.setServiceBean(implementor);
		// 进行发布
		factoryBean.create();
		System.out.println("服务持续发布中.......");
	}
}
代码语言:javascript
复制
package com.service;

/*
 * 	在cmd中使用命令:   wsdl2java http://127.0.0.1/ws?wsdl
 * 			实现将发布接口xml文件转换为java文件
 * 	IWebServiceTestService为加载发布服务类
 */
public class Test {
	public static void main(String[] args) {
		// 创建该服务类,反射加载发布接口类
		IWebServiceTestService wsi = new IWebServiceTestService();
		IWebServiceTest ws = wsi.getPort(IWebServiceTest.class);
		// 调用发布类方法
		String str = ws.webServiceTest("CXF");
		System.out.println(str);
	}
}

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

发布者:全栈程序员栈长,转载请注明出处:https://javaforall.cn/191070.html原文链接:https://javaforall.cn

本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2022年9月21日 ,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档