gie*_*s0r 2 java parsing json jersey
我想将JSON-Post中的值解析为Java-Variables.但他们总是空着的!
JSON-帖子:
{"algID":0,"vertices":[1,2,3]}
Run Code Online (Sandbox Code Playgroud)
我尝试将其解析为Java-Variables:
@POST
@Consumes(MediaType.APPLICATION_JSON)
@Path("getCloseness_vertices")
public String getCloseness_vertices(
@FormParam("algID") int algID,
@FormParam("vertices") IntArray vertices)
Run Code Online (Sandbox Code Playgroud)
如果我这样尝试:
public String getCloseness_vertices(int algID)
Run Code Online (Sandbox Code Playgroud)
Tomcat说:
用于Java类int的消息体读取器,Java类型int和MIME媒体类型application/json; charset =未找到UTF-8.
任何帮助都会很好,我只是不明白.
您需要创建一个POJO,Jersey可以将JSON序列化为:
import javax.xml.bind.annotation.XmlRootElement;
@XmlRootElement
public class MyPojo {
public int algID;
public int[] verticies;
public MyPojo() {} // constructor is required
}
Run Code Online (Sandbox Code Playgroud)
然后 ...
@POST
@Consumes(MediaType.APPLICATION_JSON)
@Path("getCloseness_vertices")
public String getCloseness_vertices(MyPojo p)
{
int i = p.algID;
}
Run Code Online (Sandbox Code Playgroud)
您还需要包含jersey-json jar文件.