JAX-WS 学习一:基于java的最简单的WebService服务的完整攻略
JAX-WS是Java API for XML Web Services的缩写,是Java EE平台中用于开发Web服务的标准API之一。本文将为您介绍如何使用JAX-WS创建最简单的基于Java的Web服务,并提供两个示例说明。
环境准备
在开始之前,您需要确保已经安装了Java开发环境(JDK)和Eclipse IDE。如果您还没有安装,可以从以下链接下载并安装:
- JDK:https://www.oracle.com/java/technologies/javase-downloads.html
- Eclipse:https://www.eclipse.org/downloads/
创建Web服务
- 打开Eclipse IDE,创建一个新的Java项目。
- 在项目中创建一个新的Java类,命名为
HelloWorld
。 - 在
HelloWorld
类中添加以下代码:
import javax.jws.WebMethod;
import javax.jws.WebService;
@WebService
public class HelloWorld {
@WebMethod
public String sayHello(String name) {
return "Hello, " + name + "!";
}
}
在代码中,我们使用@WebService
注解将HelloWorld
类标记为Web服务,使用@WebMethod
注解将sayHello
方法标记为Web服务的一个操作。sayHello
方法接收一个字符串参数name
,并返回一个字符串,其中包含了name
参数的值。
- 在Eclipse中右键单击
HelloWorld
类,选择“Web Services”->“Create Web Service”。 - 在弹的对话框中,选择“Bottom up Java bean Web Service”,然后单击“Next”。
- 在下一个对话框中,选择
HelloWorld
类,然后单击“Next”。 - 在下一个对话框中,选择“Use an existing server”,然后选择您已经安装的Web服务器,例如cat或Jetty。然后单击“Finish”。
- Eclipse将自动生成Web服务的WSDL文件,并将其部署到您选择的Web服务器上。
测试Web服务
- 打开Web浏览器,输入以下URL地址:
http://localhost:8080/HelloWorld?wsdl
其中,localhost
是您的Web服务器的主机名或IP地址,8080
是Web服务器的端口号,HelloWorld
是您在Eclipse中创建的Web服务的名称。
- 浏览器将显示Web服务的WSDL文件。在WSDL文件中,您可以看到Web服务的操作和参数信息。
- 在浏览器中输入以下URL地址:
http://localhost:8080/HelloWorld/sayHello?name=John
其中,localhost
是您的Web服务器的主机名或IP地址,8080
是Web服务器的端口号,HelloWorld
是您在Eclipse中创建Web服务的名称,sayHello
是Web服务的一个操作,name=John
是sayHello
操作的参数。
- 浏览器将显示Web服务的响应结果:
Hello, John!
示例
以下是一个使用JAX-WS创建Web服务的示例:
import javax.jws.WebMethod;
import javax.jws.WebService;
@Web
public class Calculator {
@WebMethod
public int add(int a, int b) {
return a + b;
}
@WebMethod
public int subtract(int a, int b) {
return a - b;
}
}
在代码中,我们创建了一个名为Calculator
的Web服务,其中包含了两个操作:add
和subtract
。add操作接收两个整数参数
a和
b,并返回它们的和;
subtract操作接收两个整数参数
a和
b`,并返回它们的差。
示例测试
- 打开Web浏览器,输入以下URL地址:
http://localhost:8080/Calculator?wsdl
其中,localhost
是您的Web服务器的主机名或IP地址,8080
是Web服务器的端口号,Calculator
是您在Eclipse中创建的Web服务的名称。
- 浏览器将显示Web服务的WSDL文件。在WSDL文件中,您可以看到Web服务的操作和参数信息。
- 在浏览器中输入以下URL地址:
http://localhost:8080/Calculator/add?a=1&b=2
其中,localhost
是您的Web服务器的主机名或IP地址,8080
是Web服务器的端口号,Calculator
是您在Eclipse中创建Web服务的名称,add
是Web服务的一个操作,a=1
和b=2
是add
操作的参数。
- 浏览器将显示Web服务的响应结果:
3
- 在浏览器中输入以下URL地址:
http://localhost:8080/Calculator/subtract?a=5&b=3
其中,localhost
是您的Web服务器的主机名或IP地址,8080
是Web服务器的端口号,Calculator
是您在Eclipse中创建Web服务的名称,subtract
是Web服务的一个操作,a=5
和b=3
是subtract
操作的参数。
- 浏览器将显示Web服务的响应结果:
2
注意事项
- JAX-WS是Java EE平台中用于开发Web服务的标准API之一。
- 使用JAX-WS创建Web服务需要使用
@WebService
和@WebMethod
注解。 - Web服务的WSDL文件可以通过在浏览器中输入Web服务的URL地址加上
?wsdl
后缀来访问。 - Web服务的操作可以通过在浏览器中输入Web服务的URL地址加上操作名和参数来访问。