更新時間:2020-09-18 17:14:46 來源:動力節(jié)點 瀏覽3355次
由于Spring Boot提供了Web Service的starter組件,所以集成Web Service相對來說比較簡單。本文我們就一起來看看如何使用Spring Boot集成Web Service,Spring Boot集成Web Service的整個過程有7個步驟,接下來詳細學(xué)習(xí)。
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.接口的實現(xiàn)類
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服務(wù)
* @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。

6.Web Service接口的調(diào)用
在idea中右鍵點擊項目 --> web services --> Generate Java Code From Wsdl

點擊ok,會在相應(yīng)的包下生成java文件和class文件。
7.測試Web Service程序
以上就是Spring Boot集成Web Service的整個過程,想學(xué)習(xí)更多Web Service的相關(guān)知識,可以在本站的java視頻教程中找到優(yōu)質(zhì)的課程自主學(xué)習(xí)。
Java實驗班
0基礎(chǔ) 0學(xué)費 15天面授
Java就業(yè)班
有基礎(chǔ) 直達就業(yè)
Java夜校直播班
業(yè)余時間 高薪轉(zhuǎn)行
Java在職加薪班
工作1~3年,加薪神器
Java架構(gòu)師班
工作3~5年,晉升架構(gòu)
提交申請后,顧問老師會電話與您溝通安排學(xué)習(xí)