Java restful中的返回类型xml或json
下面我有一些代码,当我用postman测试它时。出现错误“500”。我不理解“@products(MediaType.APPLICATION_XML)”的优点。它是否将返回类型自动定义为XMLJava restful中的返回类型xml或json,java,xml,Java,Xml,下面我有一些代码,当我用postman测试它时。出现错误“500”。我不理解“@products(MediaType.APPLICATION_XML)”的优点。它是否将返回类型自动定义为XML import java.sql.SQLException; import java.util.List; import javax.ws.rs.GET; import javax.ws.rs.Path; import javax.ws.rs.Produces; import javax.ws.rs.co
import java.sql.SQLException;
import java.util.List;
import javax.ws.rs.GET;
import javax.ws.rs.Path;
import javax.ws.rs.Produces;
import javax.ws.rs.core.MediaType;
@Path("/UserService")
public class UserService {
UserDAO userDAO = new UserDAO();
@GET
@Path("/users")
@Produces(MediaType.APPLICATION_XML)
public List<User> getUsers() throws ClassNotFoundException, SQLException {
return userDAO.getAllUsers();
}
}
import java.sql.SQLException;
导入java.util.List;
导入javax.ws.rs.GET;
导入javax.ws.rs.Path;
导入javax.ws.rs.products;
导入javax.ws.rs.core.MediaType;
@路径(“/UserService”)
公共类用户服务{
UserDAO UserDAO=newuserdao();
@得到
@路径(“/users”)
@生成(MediaType.APPLICATION\u XML)
public List getUsers()抛出ClassNotFoundException、SQLException{
返回userDAO.getAllUsers();
}
}
作为您的方法,结果以xml格式返回。是,@product
定义生成的格式。因此,您的用户列表将采用XML格式。
不要忘记参数化Postman头以接受XML
//To process HTTP GET requests.
@GET
//@Path Identifies the URI path that a resource class will serve requests for.
@Path("/abcd")
//@Produces defines the media type(s) that the methods of a resource class can produce.
@Produces(MediaType.APPLICATION_XML
我希望您已经准备好了用户类——包含XmlRootElement和XML元素
例如—
@XmlRootElement(name="User")
public class User{
private int id;
private String name;
public User() {
}
@XmlElement
public int getId() {
return id;
}
public void setId(int id) {
this.id = id;
}
@XmlElement
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
}
它指定此方法产生的内容类型(是复数!)(因此得名)。这是用来
现在,如果该方法已经用
@products({MediaType.APPLICATION\uxml,MediaType.APPLICATION\ujson})注释了
,那么它将被提供服务并生成JSON。现在您有了一个同时服务JSON和XML的方法。服务内容根据传入请求的Accept头决定 是,这表示XML返回的类型。注意:在邮递员处使用XMLAccept头。