jersey rs传递实体

1.通过xml传递实体

实体类:

package com.ssdm.manifest.bean;

import javax.xml.bind.annotation.XmlRootElement;

/**
 * 
 * @author qiss time:2014-3-24 14:14:09
 */
@XmlRootElement
public class PolicyInfo {
	private String xmlFileName;
	private String date;
	private String batchId;
	private String txtFileName;

	public String getTxtFileName() {
		return txtFileName;
	}

	public void setTxtFileName(String txtFileName) {
		this.txtFileName = txtFileName;
	}

	public int getCount() {
		return count;
	}

	public void setCount(int count) {
		this.count = count;
	}

	private int count;

	public String getBatchId() {
		return batchId;
	}

	public void setBatchId(String batchId) {
		this.batchId = batchId;
	}

	public String getXmlFileName() {
		return xmlFileName;
	}

	public void setXmlFileName(String xmlFileName) {
		this.xmlFileName = xmlFileName;
	}

	public String getDate() {
		return date;
	}

	public void setDate(String date) {
		this.date = date;
	}
}

服务端:

package org.senssic.server;

import javax.ws.rs.Consumes;
import javax.ws.rs.POST;
import javax.ws.rs.Path;
import javax.ws.rs.Produces;

import org.senssic.bean.PolicyInfo;

import com.sun.jersey.spi.resource.Singleton;

@Path("senssic")
@Singleton
@Produces("application/xml")
@Consumes("application/xml")
public class JerServer {
	private int count = 0;

	@POST
	@Path("qiyu")
	@Produces("application/xml")
	@Consumes("application/xml")
	public String getData(PolicyInfo pinfo) {

		System.out.println(count++);
		if (count == 1750) {
			count = 0;
		}
		System.out.println(pinfo.getXmlFileName() + "份数:" + pinfo.getCount());
		return "ok";
	}
}

客户端:

package com.sddm.manifest.client;

import java.util.Timer;

import com.sddm.mainfest.core.STimeTask;
import com.sun.jersey.api.client.Client;
import com.sun.jersey.api.client.WebResource;

public class SClient {
public static void main(String[] args){
Client client = new Client();
		WebResource wResource = client.resource(url);
ClientResponse cResponse = wResource.type(
						MediaType.APPLICATION_XML).post(ClientResponse.class,
						byInputStream);
				String back = cResponse.getEntity(String.class);
				if ("ok".equals(back)) {
					System.out.println("发送成功");
					break;
				} else {
					System.out.println("发送失败");
					throw new ConnectionFaileException("与服务端链接失败!");
			}
	}
}

请求路径:http://127.0.0.1:8081/sjersey/services/senssic/qiyu

jar包:


2.通过json传递实体


实体类:

 
package person.jason.jersey.service.entity;
import javax.xml.bind.annotation.XmlRootElement;


@XmlRootElement
public class OAUser {
private String name;
private int age;

public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public int getAge() {
return age;
}
public void setAge(int age) {
this.age = age;
}
}
服务类:

package person.jason.jersey.service;


import javax.ws.rs.Consumes;
import javax.ws.rs.GET;
import javax.ws.rs.POST;
import javax.ws.rs.Path;
import javax.ws.rs.PathParam;
import javax.ws.rs.Produces;
import javax.ws.rs.QueryParam;
import javax.ws.rs.core.MediaType;


import person.jason.jersey.service.entity.OAUser;



@Path("/OAUserWebService")
public class OAUserWebService {

@GET
@Path("test/{name}")
public String test(@PathParam("name") String name){
System.out.println("hello jersey!!! This is " + name);
return "hello jersey!!! This is " + name;
}


@GET
@Path("outUser")
@Produces({MediaType.APPLICATION_JSON})
public OAUser outUser(@QueryParam("age")int age, 
@QueryParam("name")String name){
OAUser user = new OAUser();
user.setAge(age);
user.setName(name);
return user;
}


@POST
@Path("inUser/")
@Consumes(MediaType.APPLICATION_JSON)
public String inUser(OAUser user){
System.out.println("username = " + user.getName());
return "nice work jersey!!!";
}
}
客户端类:

package person.jason.jersey.service;


import java.net.URI;
import java.net.URISyntaxException;


import javax.ws.rs.core.MediaType;


import person.jason.jersey.service.entity.OAUser;


import com.sun.jersey.api.client.Client;
import com.sun.jersey.api.client.WebResource;
import com.sun.jersey.core.util.MultivaluedMapImpl;


public class TestOAUserWebService {
static String USER = "http://localhost:8080/jerseyDemo/rest/OAUserWebService";

public static void main(String[] asdf) throws URISyntaxException{
System.out.println("0");
TestOAUserWebService.testInUser();
System.out.println("4");
}

public static void testInUser() throws URISyntaxException{
OAUser user = new OAUser();
user.setName("spring");
URI u = new URI(USER + "/inUser");
MultivaluedMapImpl params = new MultivaluedMapImpl();
params.add("user", user);
Client client = Client.create();
WebResource resource = client.resource(u);
String response = resource.entity(user, MediaType.APPLICATION_JSON).post(String.class);
System.out.println(response);
}
}





  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值