一.什么是webservice

关于webservice的介绍摘自百度百科,上面的介绍很详细。(链接:https://baike.baidu.com/item/Web%20Service/1215039?fr=aladdin)

二.springboot整合webservice

整合webservice的方式有很多,这里只是简单的和springboot做了一个整合。

1目录结构:

2.详细说明

(1)定义一个webservice接口,使用@WebService注解标明是一个webservice服务。

@WebService
public interface GreetWebService { String greeting(String hello);
} 接口实现类,这里为了演示只是做了一个字符串的返回。
@WebService
public class GreetWebServiceImpl implements GreetWebService {
@Override
public String greeting(String hello) {
return "Good morning : "+hello;
}
} (2)这是自己定义的一个bean,这个的意思就是当容器执行完成的时候会去加载run方法的内容。具体详见:https://www.cnblogs.com/wlv1314/p/12157768.html
@Component
public class MyListener implements ApplicationRunner { @Value("${webservice.path}")
private String path; @Override
public void run(ApplicationArguments args) throws Exception {
System.out.println("发布地址:"+path);
Endpoint.publish(path, new GreetWebServiceImpl());
System.out.println("发布成功");
}
}
这一步其实可以放到springboot的启动类里面去,就不用写上边的那一步了。

(3)在application.properties中配置上要发布的地址
webservice.path=http://127.0.0.1:9090/greet

到此,springboot整合webservice完毕。

3.验证是否发布成功。

3.1启动程序。

3.2打开浏览器:在地址栏输入 http://127.0.0.1:9090/greet?wsdl  记得要带?wsdl,如果出现xml页面则表明发布成功。

此时webservice服务已经发布成功,接下载我们做一个简单的测试。

4.创建webservice客户端

调用webservice接口也很简单,这里使用代理类的形式,所有的代码都会自动创建出来。

点击OK,代理会自动生成。

接下来就是调用发布的接口了。

执行main方法:

控制台输出:Good morning : tony

至此webservice服务发布和调用已经完成。

springboot整合WebService简单版的更多相关文章

  1. SpringBoot整合Mybatis注解版---update出现org.apache.ibatis.binding.BindingException: Parameter 'XXX' not found. Available parameters are [arg1, arg0, param1, param2]

    SpringBoot整合Mybatis注解版---update时出现的问题 问题描述: 1.sql建表语句 DROP TABLE IF EXISTS `department`; CREATE TABL ...

  2. Springboot整合webservice

    Springboot整合webservice 2019-12-10 16:34:42 星期二 WebService是什么 WebService是一种跨编程语言和跨操作系统平台的远程调用技术,服务之间的 ...

  3. SpringBoot整合SpringSecurity简单实现登入登出从零搭建

    技术栈 : SpringBoot + SpringSecurity + jpa + freemark ,完整项目地址 : https://github.com/EalenXie/spring-secu ...

  4. springboot整合websocket高级版

    目录 sockjs介绍 产生的原因 环境搭建 springboot整合sockjs 使用场景 聊天室开发 点对点通信 群聊 效果 总结 加入战队 微信公众号 上一章节我们说了websocket的优缺点 ...

  5. springboot整合websocket原生版

    目录 HTTP缺点 HTTP websocket区别 websocket原理 使用场景 springboot整合websocket 环境准备 客户端连接 加入战队 微信公众号 主题 HTTP请求用于我 ...

  6. SpringBoot整合websocket简单示例

    依赖 <!-- springboot整合websocket --> <dependency> <groupId>org.springframework.boot&l ...

  7. springboot整合JPA(简单整理,待续---)

    整合步骤 引入依赖: <dependencies> <dependency> <groupId>org.springframework.boot</group ...

  8. SpringBoot整合MyBatis(注解版)

    详情可以参考Mybatis官方文档 http://www.mybatis.org/spring-boot-starter/mybatis-spring-boot-autoconfigure/ (1). ...

  9. RabbitMQ基础组件和SpringBoot整合RabbitMQ简单示例

    交换器(Exchange) 交换器就像路由器,我们先是把消息发到交换器,然后交换器再根据绑定键(binding key)和生产者发送消息时的路由键routingKey, 按照交换类型Exchange ...

随机推荐

  1. Cassandra2.2.10安装过程

    1. 2.安装JVM 3.OS环境配置: 关闭防火墙:service iptables stop vi /etc/sysctl.conf vm.zone_reclaim_mode=0 vm.max_m ...

  2. js之split()和join()的用法

    说明 这几天写了一个简单的vue项目,需要截取字符串,一时间想到了正则表达式,还折腾了还一会儿,最后上网查了一下,使用split()再简单不过了,也顺便回忆一下join().可见我有多菜,哈哈,学了这 ...

  3. C++ traits技法的一点理解

    为了更好的理解traits技法.我们一步一步的深入.先从实际写代码的过程中我们遇到诸如下面伪码说起. template< typename T,typename B> void (T a, ...

  4. 【WPF学习】第四十章 画刷

    画刷填充区域,不管是元素的背景色.前景色以及边框,还是形状的内部填充和笔画(Stroke).最简单的画刷类型是SolidColorBrush,这种画刷填充一种固定.连续的颜色.在XAML中设置形状的S ...

  5. PostMan向企业微信机器人传送数据测试

    1 在企业微信中创建机器人  获取:webhook 地址 2.在Postman软件中创建Post文件 Post文件请求类型要与机器人所接受的类型一致.Get  或者 Post Url地址为上面webh ...

  6. DevOps:运维体系建设

    简介 运维体系的建设的目的在于方便运维工作,通过自动化.规范化.流程化的操作方法提高运维效率,打造一个安全.可靠.高效.可追踪.可回溯的运维环境,实现一个高可用.高并发.具备高容错.自我修复.故障能快 ...

  7. RocketChat:开源聊天软件部署

    1. 简介 RocketChat是一款优秀的开源聊天软件.支持各种平台,IOS.Android.Web.Mac.Windows以及Linux,安装部署简单,功能简单易用,目前部分功能还在完善当中,特别 ...

  8. DataGuard---->主库和备库都配置 db_file_name_convert和log_file_name_convert的作用

    一.参数说明 [1] db_file_name_convert db_file_name_convert 主数据库和备用数据库的数据文件转换目录对映(如果两数据库的目录结构不一样),如果有多个对映,逐 ...

  9. C/C++中的排序和查找

    以下内容来自<C/C++程序设计实用案例教程> 1.排序 1.1使用qsort函数 C/C++库函数提供了快速排序函数qsort(q时quick的简写),需要引入头文件<stdlib ...

  10. VFP 图形文件与剪切板互换的API解决方法

    在 VFP 中,凡遇图形处理,大多数情况下,都会涉及到图形文件与剪切板互换的情况.下面给出利用 API 解决的方法.这是原来从网上摘下来的,版权归原作者.基本处理的代码如下,你可以将其应用到你的代码中 ...