如何在Spring restful Web服务中使用rest客户端传递输入参数

时间:2015-12-23 12:54:13

标签: java spring rest parameters

我尝试使用spring rest4创建一个Web服务,但无法通过rest-client传递输入参数,有人可以建议我如何传递输入参数。

RequestMapping(value = "/create", method = RequestMethod.POST, consumes = MediaType.APPLICATION_JSON_VALUE)
public @ResponseBody Status addEmployee(@RequestBody User user) {
    try {
        // Manually setting passing parameters
        user.setUserId(0);
        user.setFirstName("dfsdfsd");
        user.setUserMailId("sadsda");
        user.setAddress("sfds");
        user.setCreatedBy(1);
        user.setIsDeleted(0);
        user.setLastName("sadas");
        user.setMobileNumber("adsasdsa");
        user.setUsrtStatus(1);
        user.setUserPassword("asdsaf");
        user.setRoleId(1);
        System.out.println("firstname:=" + user);

        dataServices.addEntity(user);

        System.out.println(user);
        return new Status(1, "Employee added Successfully !");
    } catch (Exception e) {
        e.printStackTrace();
        return new Status(0, e.toString());
    }

}

我正在使用" WizTool.org RestClient 3.2.2",Url =" http://localhost:8080/XYZ2/rest/user/create" &安培;输入参数i传递为 -

{
    "inputs": [{
        "parameterName": "pv_user_id",
        "parameterValue": ""
    }{
        "parameterName": "pv_adress",
        "parameterValue": "kjhfgkjdfhgfdhk"
    }]
}

提前致谢

1 个答案:

答案 0 :(得分:1)

将以下内容添加到控制器

RequestMapping(value = "/userformat", method = RequestMethod.GET)
public @ResponseBody User getUserFormat() {
    User user = new User();
    user.setUserId(0);
    user.setFirstName("dfsdfsd");
    user.setUserMailId("sadsda");
    user.setAddress("sfds");
    user.setCreatedBy(1);
    user.setIsDeleted(0);
    user.setLastName("sadas");
    user.setMobileNumber("adsasdsa");
    user.setUsrtStatus(1);
    user.setUserPassword("asdsaf");
    user.setRoleId(1);

    return user;
}

在浏览器中调用此网址“http://localhost:8080/XYZ2/rest/user/userformat”,它会在json中返回用户表示。 现在为用户复制这个json格式,并删除添加到控制器的所有上述代码。

在wiztool rest client中:
1.输入网址“http://localhost:8080/XYZ2/rest/user/userformat”。假设您在此过程之后删除其相应的控制器映射 2.选择方法为GET
3.点击'>>'用于触发请求的按钮
4.复制你在HTTP响应“Body”中获得的任何json,如底部的图所示 wiztool rest client: get user json format

用户json可能类似于下面的那个。我只包含了一些属性。对于其余的人,您可以从上面介绍的URL“userformat”的输出中获得。

{
"userId": 1,
"firstName": "ronaldinho",
"lastName": "Gaucho",
"userMailId": "r10@gmaildummy.com",
"roleId": 2
}

您可以在此网址“http://localhost:8080/XYZ2/rest/user/create

的请求正文中使用此功能

在wiztool rest client中:
1.输入网址“”http://localhost:8080/XYZ2/rest/user/create“” 2.选择方法作为POST

enter image description here

  1. 现在点击图片中突出显示的“Body”。从下拉列表中选择“String body”。在下一个输入中,输入“application / json”,它是content-type。现在粘贴我们从第一个url的输出中复制的用户json格式并将其粘贴到文本区域中。你可以查看下面的图片 enter image description here
  2. 点击'>>'解雇请求。
  3. 为什么我建议你这个方法是因为我不知道你在User类中是否有任何json属性注释。另外,最好使用这种方式,而不是手动创建json。