介紹一下環境:
首先需要下載一個jaxrs-ri-2.22.2.zip的包
采用Jdeveloper 12c版本,jdk1.8
WebLogic Server 12.2.1版本
Restful項目建立
在Jdeveloper 12c中建立一個項目,先建立一個application.
建立一個項目.
在項目中建立一個person的類,在建立一個personService類.
代碼如下:
Person.java
package restfulproject; import java.util.Date; import javax.xml.bind.annotation.XmlRootElement; @XmlRootElement public void setId(Long id) { public Long getId() { public void setFirstname(String firstname) { public String getFirstname() { public void setLastname(String lastname) { public String getLastname() { public void setHiredate(Date hiredate) { public Date getHiredate() { public void setAddressId(Long addressId) { public Long getAddressId() { |
PersonService
import java.util.ArrayList;
import java.util.Date;import java.util.List; public class PersonService { private List<Person> persons; private Person person; public PersonService() { super(); this.persons = new ArrayList<Person>(); for (long i = 0; i < 10; i++) { Person p = new Person(); p.setId(i); p.setFirstname("Firstname " + i); p.setLastname("Last " + i); p.setHiredate(new Date()); this.persons.add(p); } this.person = this.persons.get(0); }
public List<Person> getPersons(){
return this.persons; }
public void addPerson(Person person) {
System.out.println("add person " + person); if(person != null){ getPersons().add(person); } } public Person getPerson(){ return person; } } |
生成restful Service.
選擇consume和product支持的格式
修改代碼最后變成:
package restfulproject; import java.util.ArrayList; import javax.ws.rs.Consumes; @Path("restfulproject") private List<Person> persons; public PersonService() { @GET @POST @Consumes(MediaType.APPLICATION_JSON) public void addPerson(Person person) {
} @GET |
同時web.xml也加入了內容
<?xml version = '1.0' encoding = 'GBK'?> |
部署
生成部署profile.
選擇生成War包
然后部署.
測試
在WebLogic管理控制台上找到部署的url
然后找到WADL地址
通過SOAPUI生成WADL項目,然后運行測試Perons,獲取所有的person信息
如果需要得到xml,需要在head中加入Accept=application/xml
getperson/{userid}的測試界面
添加用戶