这篇文章介绍一下怎么通过CXF来发布RESTful的Web Service.
首先我们要知道apache cxf是一种开源 Web 服务框架。jax-rs和jax-ws是两种webservice风格。
1. 首先是实体类,注意其中的@XmlRootElement注解
package com.jing.cxf.vo;
import java.util.Date;
import javax.xml.bind.annotation.XmlRootElement;
@XmlRootElement(name="Customer")
public class Customer {
private String id;
private String name;
private Date birthday;
public String getId() {
return id;
}
public void setId(String id) {
this.id = id;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public Date getBirthday() {
return birthday;
}
public void setBirthday(Date birthday) {
this.birthday = birthday;
}
/*@Override
public String toString() {
return org.apache.commons.lang.builder.ToStringBuilder.reflectionToString(this);
} */
}
2. RESTful Web Service接口类,可以通过修改@Produces注解来声明暴露接口返回的json还是xml数据格式
package com.jing.cxf.jaxRs;
import javax.ws.rs.GET;
import javax.ws.rs.Path;
import javax.ws.rs.PathParam;
import javax.ws.rs.Produces;
import javax.ws.rs.QueryParam;
import com.jing.cxf.vo.Customer;
@Path(value = "/customer")
//@Produces("*/