溫馨提示×

Java WebService 簡單實例(附實例代碼)

小云
155
2023-08-17 15:06:59
欄目: 編程語言

下面是一個簡單的Java WebService實例,使用了JAX-WS標準:

  1. 編寫WebService接口:
import javax.jws.WebMethod;
import javax.jws.WebService;
@WebService
public interface HelloWorld {
@WebMethod
String sayHello(String name);
}
  1. 實現(xiàn)WebService接口:
import javax.jws.WebService;
@WebService(endpointInterface = "HelloWorld")
public class HelloWorldImpl implements HelloWorld {
@Override
public String sayHello(String name) {
return "Hello, " + name + "!";
}
}
  1. 配置Web Service部署描述文件(web.xml):
<web-app>
<display-name>WebServiceExample</display-name>
<servlet>
<servlet-name>WebServiceExample</servlet-name>
<servlet-class>com.sun.xml.ws.transport.http.servlet.WSServlet</servlet-class>
<init-param>
<param-name>com.sun.xml.ws.transport.http.servlet.WSServletContextListener</param-name>
<param-value>1</param-value>
</init-param>
</servlet>
<servlet-mapping>
<servlet-name>WebServiceExample</servlet-name>
<url-pattern>/hello</url-pattern>
</servlet-mapping>
</web-app>
  1. 配置Web Service綁定描述文件(sun-jaxws.xml):
<endpoints xmlns="http://java.sun.com/xml/ns/jax-ws/ri/runtime"
version="2.0">
<endpoint name="HelloWorld" implementation="HelloWorldImpl"
url-pattern="/hello"/>
</endpoints>
  1. 使用JAX-WS提供的工具生成Web Service服務(wù)端和客戶端代碼:
wsimport -keep -p com.example.ws http://localhost:8080/WebServiceExample/hello?wsdl
  1. 部署到Servlet容器(如Tomcat)并啟動。

  2. 測試WebService服務(wù)端:

在瀏覽器中訪問http://localhost:8080/WebServiceExample/hello?wsdl,能夠看到生成的WSDL文件。

  1. 測試WebService客戶端:
import com.example.ws.HelloWorld;
import com.example.ws.HelloWorldImplService;
public class HelloWorldClient {
public static void main(String[] args) {
HelloWorldImplService service = new HelloWorldImplService();
HelloWorld port = service.getHelloWorldImplPort();
String result = port.sayHello("Alice");
System.out.println(result);
}
}

這個簡單的Java WebService實例演示了一個簡單的問候服務(wù)。通過WebService接口定義了一個sayHello方法,實現(xiàn)類返回一個問候語??蛻舳送ㄟ^調(diào)用WebService接口的方法與服務(wù)端進行交互。

0