我正在尝试实现一个程序,我想获取通过链接发送的参数。但我不知道如何创建链接以便它将包含参数以及我应该如何在 java 的 Web 服务中访问该参数。
我已经做到了。
http://localhost:8080/RestWebService/rest/person/todo/
这是我的实际链接,不带参数,todo 是我的函数,它返回 person json 对象。
@GET
@Path("todo")
@Produces(MediaType.APPLICATION_JSON)
public Person whatEverNameYouLike(@PathParam("varX") String varX,@PathParam("varY") String varY) {
Person todo = new Person();
todo.setEmail(varX);
todo.setFirstName(varX);
todo.setId(1);
todo.setLastName(varX);
return todo;
}
这是我在java中的函数,我想在其中访问来自上面给出的链接的数据。
http://localhost:8080/RestWebService/rest/person/todo/bcd/asd/1/asd
我尝试在待办事项之后提供参数,如上面链接中给出的那样,但它不起作用。
<?xml version="1.0" encoding="UTF-8"?>
<web-app
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns="http://java.sun.com/xml/ns/javaee"
xmlns:web="http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd"
xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_3_0.xsd"
id="WebApp_ID"
version="3.0">
<display-name>JerseyRESTServer</display-name>
<servlet>
<servlet-name>Jersey REST Service</servlet-name>
<servlet-class>com.sun.jersey.spi.container.servlet.ServletContainer</servlet-class>
<init-param>
<param-name>com.sun.jersey.config.property.packages</param-name>
<param-value>com.avilyne.rest.resource</param-value>
</init-param>
<load-on-startup>1</load-on-startup>
</servlet>
<servlet-mapping>
<servlet-name>Jersey REST Service</servlet-name>
<url-pattern>/rest/*</url-pattern>
</servlet-mapping>
</web-app>
最佳答案
为了使您的 @PathParam
正常工作,您还需要更新 @Path
。
@Path("todo/{varX}/{varY}")
关于java - 如何通过链接发送参数到java web服务以及如何在java中获取它,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34061111/