Java 如何将restlet请求的json类型输入转换为POJO?

Java 如何将restlet请求的json类型输入转换为POJO?,java,json,jackson,restlet,Java,Json,Jackson,Restlet,我想编写一个简单的方法来接收表示POJO的json,并使用该POJO 示例(接收和返回POJO): Jackson听起来是一个更好的工作工具,因为它具有通用性,因此更安全-如果它能工作的话…Ne需要使用任何表示对象。以下内容在背景中使用了jackson,效果非常出色: @Put @Produces(MediaType.APPLICATION_JSON) @Consumes(MediaType.APPLICATION_JSON) public Device b(Device device) {

我想编写一个简单的方法来接收表示POJO的json,并使用该POJO

示例(接收和返回POJO):


Jackson听起来是一个更好的工作工具,因为它具有通用性,因此更安全-如果它能工作的话…

Ne需要使用任何表示对象。以下内容在背景中使用了jackson,效果非常出色:

@Put
@Produces(MediaType.APPLICATION_JSON)
@Consumes(MediaType.APPLICATION_JSON)
public Device b(Device device) {
    // Do something with the POJO!!!
    return device;
}
它转换输入和输出。下面是它工作原理的一个示例:

curl -i -X PUT -H 'Content-Type: application/json' -d '{"port":3,"ip":"3"}' http://localhost:8888/restlet/
结果:

HTTP/1.1 200 OK
Content-Type: application/json; charset=UTF-8
Date: Sun, 13 Oct 2013 02:03:48 GMT
Accept-Ranges: bytes
Server: Development/1.0
Vary: Accept-Charset, Accept-Encoding, Accept-Language, Accept
Cache-Control: no-cache
Expires: Fri, 01 Jan 1990 00:00:00 GMT
Content-Length: 19

{"ip":"3","port":3}

Ne需要使用任何表示对象。以下内容在背景中使用了jackson,效果非常出色:

@Put
@Produces(MediaType.APPLICATION_JSON)
@Consumes(MediaType.APPLICATION_JSON)
public Device b(Device device) {
    // Do something with the POJO!!!
    return device;
}
它转换输入和输出。下面是它工作原理的一个示例:

curl -i -X PUT -H 'Content-Type: application/json' -d '{"port":3,"ip":"3"}' http://localhost:8888/restlet/
结果:

HTTP/1.1 200 OK
Content-Type: application/json; charset=UTF-8
Date: Sun, 13 Oct 2013 02:03:48 GMT
Accept-Ranges: bytes
Server: Development/1.0
Vary: Accept-Charset, Accept-Encoding, Accept-Language, Accept
Cache-Control: no-cache
Expires: Fri, 01 Jan 1990 00:00:00 GMT
Content-Length: 19

{"ip":"3","port":3}

Ne需要使用任何表示对象。以下内容在背景中使用了jackson,效果非常出色:

@Put
@Produces(MediaType.APPLICATION_JSON)
@Consumes(MediaType.APPLICATION_JSON)
public Device b(Device device) {
    // Do something with the POJO!!!
    return device;
}
它转换输入和输出。下面是它工作原理的一个示例:

curl -i -X PUT -H 'Content-Type: application/json' -d '{"port":3,"ip":"3"}' http://localhost:8888/restlet/
结果:

HTTP/1.1 200 OK
Content-Type: application/json; charset=UTF-8
Date: Sun, 13 Oct 2013 02:03:48 GMT
Accept-Ranges: bytes
Server: Development/1.0
Vary: Accept-Charset, Accept-Encoding, Accept-Language, Accept
Cache-Control: no-cache
Expires: Fri, 01 Jan 1990 00:00:00 GMT
Content-Length: 19

{"ip":"3","port":3}

Ne需要使用任何表示对象。以下内容在背景中使用了jackson,效果非常出色:

@Put
@Produces(MediaType.APPLICATION_JSON)
@Consumes(MediaType.APPLICATION_JSON)
public Device b(Device device) {
    // Do something with the POJO!!!
    return device;
}
它转换输入和输出。下面是它工作原理的一个示例:

curl -i -X PUT -H 'Content-Type: application/json' -d '{"port":3,"ip":"3"}' http://localhost:8888/restlet/
结果:

HTTP/1.1 200 OK
Content-Type: application/json; charset=UTF-8
Date: Sun, 13 Oct 2013 02:03:48 GMT
Accept-Ranges: bytes
Server: Development/1.0
Vary: Accept-Charset, Accept-Encoding, Accept-Language, Accept
Cache-Control: no-cache
Expires: Fri, 01 Jan 1990 00:00:00 GMT
Content-Length: 19

{"ip":"3","port":3}

这有点混合了外部化形式和编译时逻辑的味道。我下意识的反应是将JSON转换为映射,然后通过util将该映射转换为POJO,然后将该POJO传递到简单方法中。扔掉所有这些注释。JSON!=这有点混合了外部化形式和编译时逻辑。我下意识的反应是将JSON转换为映射,然后通过util将该映射转换为POJO,然后将该POJO传递到简单方法中。扔掉所有这些注释。JSON!=这有点混合了外部化形式和编译时逻辑。我下意识的反应是将JSON转换为映射,然后通过util将该映射转换为POJO,然后将该POJO传递到简单方法中。扔掉所有这些注释。JSON!=这有点混合了外部化形式和编译时逻辑。我下意识的反应是将JSON转换为映射,然后通过util将该映射转换为POJO,然后将该POJO传递到简单方法中。扔掉所有这些注释。JSON!=对象。您可以发布使用该对象的资源代码吗?这是我很想做的事,但我正试着弄清楚它是如何连接起来的。你有b(设备设备)方法吗?当然有:公共类设备{private String ip;private int port;@Deprecated public Device(){}公共设备(String ip,int port){super();this.ip=ip;this.port=port;}公共字符串getIp(){return ip;}公共int getPort(){return port;}似乎我可以删除
@产生的
@消耗的
注释。它是可以自动解析的。有关如何执行此操作的示例,请参见以下内容:。curl会得到同样的结果。你能发布使用这个的资源代码吗?这是我很想做的事,但我正试着弄清楚它是如何连接起来的。你有b(设备设备)方法吗?当然有:公共类设备{private String ip;private int port;@Deprecated public Device(){}公共设备(String ip,int port){super();this.ip=ip;this.port=port;}公共字符串getIp(){return ip;}公共int getPort(){return port;}似乎我可以删除
@产生的
@消耗的
注释。它是可以自动解析的。有关如何执行此操作的示例,请参见以下内容:。curl会得到同样的结果。你能发布使用这个的资源代码吗?这是我很想做的事,但我正试着弄清楚它是如何连接起来的。你有b(设备设备)方法吗?当然有:公共类设备{private String ip;private int port;@Deprecated public Device(){}公共设备(String ip,int port){super();this.ip=ip;this.port=port;}公共字符串getIp(){return ip;}公共int getPort(){return port;}似乎我可以删除
@产生的
@消耗的
注释。它是可以自动解析的。有关如何执行此操作的示例,请参见以下内容:。curl会得到同样的结果。你能发布使用这个的资源代码吗?这是我很想做的事,但我正试着弄清楚它是如何连接起来的。你有b(设备设备)方法吗?当然有:公共类设备{private String ip;private int port;@Deprecated public Device(){}公共设备(String ip,int port){super();this.ip=ip;this.port=port;}公共字符串getIp(){return ip;}公共int getPort(){return port;}似乎我可以删除
@产生的
@消耗的
注释。它是可以自动解析的。有关如何执行此操作的示例,请参见以下内容:。curl也会得到同样的结果。