介绍一下环境:
首先需要下载一个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}的测试界面
添加用户