Spring Boot集成Web Service方法 - 极悦
专注Java教育14年 全国咨询/投诉热线:444-1124-454
极悦LOGO图
始于2009,口口相传的Java黄埔军校
首页 hot资讯 Spring Boot集成Web Service方法

Spring Boot集成Web Service方法

更新时间:2020-09-18 17:14:46 来源:极悦 浏览2775次

由于Spring Boot提供了Web Service的starter组件,所以集成Web Service相对来说比较简单。本文我们就一起来看看如何使用Spring Boot集成Web Service,Spring Boot集成Web Service的整个过程有7个步骤,接下来详细学习。

1.pom文件引入依赖

org.springframework.boot
spring-boot-starter-web-services
org.apache.cxf
cxf-rt-frontend-jaxws
3.1.6

org.apache.cxf
cxf-rt-transports-http
3.1.6

2.新建webservice接口

import javax.jws.WebMethod;
import javax.jws.WebParam;
import javax.jws.WebService;
/**
* @Title: WebServiceDemoService.java
* @Description: TODO()
* @Author: 爱飘de小子 上午9:39
* @Date: 2018年10月26日 09点39分
*/
@WebService
public interface WebServiceDemoService {
@WebMethod
String hello(@WebParam(name = "name")String name);
}

3.接口的实现类

import org.springframework.stereotype.Service;
import javax.jws.WebService;
/**
* @Title: WebServiceDemoServiceImpl.java
* @Description: TODO()
* @Author: 爱飘de小子 上午9:39
* @Date: 2018年10月26日 09点39分
*/
@Service
@WebService(serviceName = "WebServiceDemoService", // 与接口中指定的name一致
targetNamespace = "http://webservice.business.mixpay.com", // 与接口中的命名空间一致,一般是接口的包名倒
endpointInterface = "com.mixpay.business.webservice.WebServiceDemoService" // 接口地址
)
public class WebServiceDemoServiceImpl implements WebServiceDemoService {
@Override
public String hello(String name) {
return "hello"+name;
}
}

4.新建webservice配置类WebServiceConfig

import com.mixpay.business.webservice.WebServiceDemoService;
import org.apache.cxf.Bus;
import org.apache.cxf.bus.spring.SpringBus;
import org.apache.cxf.jaxws.EndpointImpl;
import org.apache.cxf.transport.servlet.CXFServlet;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.boot.web.servlet.ServletRegistrationBean;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;
import javax.xml.ws.Endpoint;

/**
* @Title: WebServiceConfig.java
* @Description: TODO(WebService配置)
* @Author: 爱飘de小子 16:13
* @Date: 2018年08月03日 16点13分
*/
@Configuration
public class WebServiceConfig {
@Autowired
private WebServiceDemoService webServiceDemoService;
/**

* 注入servlet bean name不能dispatcherServlet 否则会覆盖dispatcherServlet
* @return
*/

@Bean(name = "cxfServlet")
public ServletRegistrationBean cxfServlet() {
return new ServletRegistrationBean(new CXFServlet(),"/webservice/*");
}

@Bean(name = Bus.DEFAULT_BUS_ID)
public SpringBus springBus() {
return new SpringBus();
}
/**
* 注册WebServiceDemoService接口到webservice服务
* @return
*/
@Bean(name = "WebServiceDemoEndpoint")
public Endpoint sweptPayEndpoint() {
EndpointImpl endpoint = new EndpointImpl(springBus(), webServiceDemoService);
endpoint.publish("/webservice");
return endpoint;
}
}

5.启动项目后,游览器访问 http://localhost:项目端口/CXFServlet注册地址,本例访问http://localhost:8500/webservice。

图片1.png

6.Web Service接口的调用

在idea中右键点击项目 --> web services --> Generate Java Code From Wsdl

图片2.png

点击ok,会在相应的包下生成java文件和class文件。

7.测试Web Service程序

以上就是Spring Boot集成Web Service的整个过程,想学习更多Web Service的相关知识,可以在本站的java视频教程中找到优质的课程自主学习。

提交申请后,顾问老师会电话与您沟通安排学习

免费课程推荐 >>
技术文档推荐 >>