操作Restful API的url参数

操作Restful API的url参数,rest,api,spring-mvc,restful-url,Rest,Api,Spring Mvc,Restful Url,我只需要知道当有人用参数调用我的API时,如何操作url参数 http://localhost:8100/apis/employee?firstName=john&lastName=Do 我想在GET方法中使用这些firstName和lastName参数,但我不知道如何提取它们 @GET @Produces({MediaType.APPLICATION_XML, MediaType.APPLICATION_JSON}) public Response getEmployee() {

我只需要知道当有人用参数调用我的API时,如何操作url参数

http://localhost:8100/apis/employee?firstName=john&lastName=Do 
我想在GET方法中使用这些firstName和lastName参数,但我不知道如何提取它们

@GET
@Produces({MediaType.APPLICATION_XML, MediaType.APPLICATION_JSON})
public Response getEmployee() {

//Just need to extract the parameters in here so I can use on the logic to return only the ones that meet the requirements. 

}

任何帮助都将不胜感激。我正在Java上使用SpringBootApplication

@RequestParam
就是您要找的

public Response getEmployee(@RequestParam("firstName") String firstName, @RequestParam("lastName") String lastName) {
...
}

@RequestParam
是您正在寻找的

public Response getEmployee(@RequestParam("firstName") String firstName, @RequestParam("lastName") String lastName) {
...
}

您可以在控制器方法中使用
@RequestParam
来访问查询参数。e、 g

public Response getEmployee(@RequestParam("firstName") String firstName, @RequestParam("lastName") String lastName)

您可以在控制器方法中使用
@RequestParam
来访问查询参数。e、 g

public Response getEmployee(@RequestParam("firstName") String firstName, @RequestParam("lastName") String lastName)

根据问题中显示的注释,您使用的是JAX-RS(可能是Jersey)。因此,请使用:

@GET
@产生({MediaType.APPLICATION_XML,MediaType.APPLICATION_JSON})
公共响应getEmployee(@QueryParam(“firstName”)字符串firstName,
@QueryParam(“lastName”)字符串(lastName){
...
}
对于Spring MVC(还提供REST功能),您希望使用:

@RequestMapping(method=RequestMethod.GET,
产生={MediaType.APPLICATION\u XML\u值,
MediaType.APPLICATION_JSON_VALUE})
公共响应getEmployee(@RequestParam(“firstName”)字符串firstName,
@RequestParam(“lastName”)字符串(lastName){
...
}

JAX-RS(带Jersey)和SpringMVC都可以与SpringBoot一起使用。有关详细信息,请参阅


关于Spring MVC和JAX-RS之间差异的详细信息,请参见此部分。

根据问题中显示的注释,您使用的是JAX-RS(可能是Jersey)。因此,请使用:

@GET
@产生({MediaType.APPLICATION_XML,MediaType.APPLICATION_JSON})
公共响应getEmployee(@QueryParam(“firstName”)字符串firstName,
@QueryParam(“lastName”)字符串(lastName){
...
}
对于Spring MVC(还提供REST功能),您希望使用:

@RequestMapping(method=RequestMethod.GET,
产生={MediaType.APPLICATION\u XML\u值,
MediaType.APPLICATION_JSON_VALUE})
公共响应getEmployee(@RequestParam(“firstName”)字符串firstName,
@RequestParam(“lastName”)字符串(lastName){
...
}

JAX-RS(带Jersey)和SpringMVC都可以与SpringBoot一起使用。有关详细信息,请参阅


关于Spring MVC和JAX-RS之间差异的详细信息,请参阅此部分。

您使用的是什么语言?我使用的是Java上的SpringBootApplication不太了解Java,也许可以帮助您了解您使用的是什么语言?我使用的是Java上的SpringBootApplication不太了解Java,也许可以帮助您解决OP使用Spring引导的问题,但是
@GET
@products
属于JAX-RS(可以与Spring一起使用)。因此正确的注释是
@QueryParam
,而不是
@RequestParam
。有关更多详细信息,请参阅my。OP使用Spring引导,但
@GET
@products
属于JAX-RS(可与Spring一起使用)。因此正确的注释是
@QueryParam
,而不是
@RequestParam
。有关更多详细信息,请参阅my。OP使用Spring引导,但
@GET
@products
属于JAX-RS(可与Spring一起使用)。因此正确的注释是
@QueryParam
,而不是
@RequestParam
。有关更多详细信息,请参阅my。OP使用Spring引导,但
@GET
@products
属于JAX-RS(可与Spring一起使用)。因此正确的注释是
@QueryParam
,而不是
@RequestParam
。有关更多详细信息,请参阅我的。是的,这是正确的,我正在使用JAX-RS。我有一个问题。如果要按ID提取员工,可以使用employeeRepository.findOne(),其中employeeRepository是扩展PagingAndSortingRepository的接口。如果我想根据firstName或lastName选择员工,我该怎么做?我是否在employeeRepository界面上实现我的方法??我只是问,因为我不想重新发明轮子:“多纳那超出了你当前问题的范围,所以你应该考虑问一个新问题。”但是,它可能类似于
Employee findbyfirstnameignorecase和lastnameignorecase(String firstName,String lastName)
。它似乎无法识别“@QueryParam”上的firstName和lastName。我是否需要添加任何批注“@Path”或类似的内容?如果是,那会是什么样子?是的,这是正确的,我正在使用JAX-RS。我有一个问题。如果要按ID提取员工,可以使用employeeRepository.findOne(),其中employeeRepository是扩展PagingAndSortingRepository的接口。如果我想根据firstName或lastName选择员工,我该怎么做?我是否在employeeRepository界面上实现我的方法??我只是问,因为我不想重新发明轮子:“多纳那超出了你当前问题的范围,所以你应该考虑问一个新问题。”但是,它可能类似于
Employee findbyfirstnameignorecase和lastnameignorecase(String firstName,String lastName)
。它似乎无法识别“@QueryParam”上的firstName和lastName。我是否需要添加任何批注“@Path”或类似的内容?如果是,那会是什么样子?