700字范文,内容丰富有趣,生活中的好帮手!
700字范文 > cxf发布rest风格的webService

cxf发布rest风格的webService

时间:2020-11-03 22:57:55

相关推荐

cxf发布rest风格的webService

第一步,创建工程并导入cxf jar包。第二步,编写pojo。

package com.scut.pojo;import java.util.Date;import javax.xml.bind.annotation.XmlElement;import javax.xml.bind.annotation.XmlRootElement;import javax.xml.bind.annotation.XmlTransient;@XmlRootElement(name="student")public class Student {@XmlElementpublic int id;@XmlElementpublic String name;@XmlElementpublic Date birthday;@XmlTransientpublic int getId() {return id;}public void setId(int id) {this.id = id;}@XmlTransientpublic String getName() {return name;}public void setName(String name) {this.name = name;}@XmlTransientpublic Date getBirthday() {return birthday;}public void setBirthday(Date birthday) {this.birthday = birthday;}}

第三步,编写SEI和实现类

package com.scut.dao;import java.util.List;import javax.jws.WebService;import javax.ws.rs.GET;import javax.ws.rs.Path;import javax.ws.rs.PathParam;import javax.ws.rs.Produces;import javax.ws.rs.core.MediaType;import com.scut.pojo.Student;@WebService@Path("/student")public interface StudentService {@Path("/query/{id}")@GET@Produces(MediaType.APPLICATION_XML)public Student queryStudent(@PathParam("id") int id);@GET@Path("/querylist/{type}")@Produces(MediaType.APPLICATION_JSON)public List<Student> queryStudentList(@PathParam("type") String type);}

package com.scut.dao.impl;import java.util.ArrayList;import java.util.Date;import java.util.List;import com.scut.dao.StudentService;import com.scut.pojo.Student;public class StudentServiceImpl implements StudentService{public Student queryStudent(int id) {Student s=new Student();s.setBirthday(new Date());s.setId(001);s.setName("yj");return s;}public List<Student> queryStudentList(String type) {List<Student>list=new ArrayList<Student>();Student s2=new Student();s2.setBirthday(new Date());s2.setId(001);s2.setName("jy");Student s1=new Student();s1.setBirthday(new Date());s1.setId(002);s1.setName("jq");list.add(s1);list.add(s2);return list;}}

第四步,发布服务

package com.scut.server;import org.apache.cxf.jaxrs.JAXRSServerFactoryBean;import com.scut.dao.impl.StudentServiceImpl;public class StudentServer {public static void main(String[] args) {JAXRSServerFactoryBean jaxrsServerFactoryBean=new JAXRSServerFactoryBean();jaxrsServerFactoryBean.setAddress("http://127.0.0.1:12345/rest");jaxrsServerFactoryBean.setServiceBean(new StudentServiceImpl());jaxrsServerFactoryBean.setResourceClasses(StudentServiceImpl.class);jaxrsServerFactoryBean.create();}}

需要设置servicebean,address和ResourseClass

- 第五步,浏览器上验证服务是否开启

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。