我是第一次编写 Web 服务。我创建了一个基于 Jersey 的 RESTful Web 服务.我想生成 JSON。我需要做什么来生成我的 Web 服务的正确 JSON 类型?
这是我的一种方法:
@GET
@Path("/friends")
@Produces("application/json")
public String getFriends() {
return "{'friends': ['Michael', 'Tom', 'Daniel', 'John', 'Nick']}";
}
我只需为我的方法指出注释 @Produces("application/json")
就足够了吗?那么这个方法可能返回任何类型的对象呢?还是只有字符串?我需要对这些对象进行额外处理或转换吗?
请帮助我作为初学者处理这些问题。提前致谢!
最佳答案
您可以使用 jaxb 注释来注释您的 bean。
@XmlRootElement
public class MyJaxbBean {
public String name;
public int age;
public MyJaxbBean() {} // JAXB needs this
public MyJaxbBean(String name, int age) {
this.name = name;
this.age = age;
}
}
然后您的方法将如下所示:
@GET @Produces("application/json")
public MyJaxbBean getMyBean() {
return new MyJaxbBean("Agamemnon", 32);
}
最新的文档中有一个章节处理这个问题:
https://jersey.java.net/documentation/latest/user-guide.html#json
关于java - RESTful Web 服务如何正确生成 JSON?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13594945/