RESTEasy默认值
@Consumes在未指定MediaType时的默认接收格式:
@Consumes(MediaType.MEDIA_TYPE_WILDCARD) 或者 @Consumes(MediaType.WILDCARD)
@Produces在未指定MediaType时的默认返回格式:
当方法返回的是一个Entity对象时:
@Produces(MediaType.APPLICATION_XML)
当方法返回的是String时:
@Produces(MediaType.TEXT_PLAIN)
使用总结:
>>在Jackson JSON模式下,List可以和Array对等。也就是说List可以用Array来接收,Array也可以用List来接收。
>>在Jackson JSON模式下,Map和对象也能进行同样的相互转化。
>>在纯Jettision JAXB JSON模式下,服务器代码中的方法不能使用List接收对象集合,同样也不能使用Map来接收参数,MultivaluedMap除外。如下代码是不能正常工作的。
public List<MyCustomer> JettisionList(List<MyCustomer> input) {
>> 在Jettision JAXB JSON模式下,如果服务器代码中的方法返回的是List,则需要对List里的对象的类上加注解@XmlRootElement。
public List<Customer> getBooksMapped9() {>>在Jettision JAXB JSON模式下,如果服务器代码中的方法想要返回List或者实休,则必需对实体类上加注解@XmlRootElement。对于List,如果不方便对List里的对象的类上加注解@XmlRootElement,则可以使用一个包装类Customers,这样就不用对Customer加任何注解。
public Customers getBooksMapped10() {
@XmlRootElement(name = "customers") public class Customers { private List<Customer> customers; public List<Customer> getCustomers() { return customers; } public void setCustomers(List<Customer> customers) { this.customers = customers; } }