public class RestResponse extends BaseResponse{ private Object jsonData;//数据 public Object getJsonData() { return jsonData; } public void setJsonData(Object jsonData) { this.jsonData = jsonData; } }
1 /** 2 * @ProjectName: BSP 海康威视大数据服务平台 3 * @Copyright: 2015 HangZhou Hikvision System Technology Co., Ltd. All Right Reserved. 4 * @address: http://www.hikvision.com 5 * @date: 2015年12月23日 14:39 6 * @Description: 本内容仅限于杭州海康威视数字技术股份有限公司内部使用,禁止转发. 7 */ 8 package com.hikvision.bsp.facecloud.ws.webservice.domain; 9 10 import com.hikvision.facecloud.constant.FaceCloudConstant; 11 12 import javax.xml.bind.annotation.XmlRootElement; 13 14 /** 15 * <p> 16 * ws返回的公共属性类 17 * </p> 18 * 19 * @author chenxiaoyou 2015年12月23日 14:39 20 * @version V1.0 21 * @modificationHistory=========================逻辑或功能性重大变更记录 22 * @modify by user: {修改人} ${date} 23 * @modify by reason: {方法名}:{原因} 24 */ 25 @XmlRootElement 26 public class BaseResponse { 27 28 /** 29 * 状态码 30 */ 31 private int resultCode = FaceCloudConstant.MESSAGE.RET_FAIL; 32 33 /** 34 * 错误信息 35 */ 36 private String msg = FaceCloudConstant.MESSAGE.MSG_FAIL; 37 38 public int getResultCode() { 39 return resultCode; 40 } 41 42 public void setResultCode(int resultCode) { 43 this.resultCode = resultCode; 44 } 45 46 public String getMsg() { 47 return msg; 48 } 49 50 public void setMsg(String msg) { 51 this.msg = msg; 52 } 53 }
1 /** 2 * @ProjectName: Antelope系统开发框架 3 * @Copyright: 2010 ChongQing Hikvision System Technology Co., Ltd. All Right Reserved. 4 * @address: http://www.hikvision.com 5 * @date: 2012-3-27 上午09:39:20 6 * @Description: 本内容仅限于重庆海康威视系统技术有限公司内部使用,禁止转发. 7 */ 8 package com.hikvision.bsp.facecloud.utils; 9 10 import com.google.gson.GsonBuilder; 11 import com.hikvision.bsp.common.util.JAXBUtil; 12 import com.hikvision.facecloud.constant.FaceCloudConstant; 13 import com.hikvision.bsp.facecloud.ws.webservice.domain.BaseResponse; 14 import org.apache.commons.lang3.StringUtils; 15 16 import javax.ws.rs.core.Response; 17 import javax.ws.rs.core.Response.ResponseBuilder; 18 import java.util.Locale; 19 20 /** 21 * <p> 22 * Rest服务操作工具类 23 * </p> 24 * 25 * @author zhuchao 2016/5/20 14:14 26 * @version V1.0 27 * @modificationHistory=========================逻辑或功能性重大变更记录 28 * @modify by user: $author$ $date$ 29 * @modify by reason: {方法名}:{原因} 30 */ 31 public class RestServiceOperUtil { 32 33 public final static String JSON_TYPE = "json"; 34 public final static String XML_TYPE = "xml"; 35 36 /** 37 * 获取Response对象 38 * 39 * @param callback 40 * @param type 41 * @param response 42 * @return 43 */ 44 public static Response getResponse(String callback, String type, Object response) { 45 ResponseBuilder rb = null; 46 if (null == response) { 47 response = new BaseResponse(); 48 } 49 // jsoncallback处理跨域的问题 50 if (RestServiceOperUtil.XML_TYPE.equals(type)) { 51 // 返回xml格式串 52 // XStream xstream = new XStream(new Dom4JDriver()); 53 // xstream.alias("results", ResultInfo.class); 54 // String xml = xstream.toXML(data); 55 String xml = JAXBUtil.java2XmlString(response); 56 if (StringUtils.isNotBlank(callback)) { 57 xml = callback + "(" + xml + ")"; 58 } 59 rb = Response.ok(xml); 60 rb.type("application/xml;charset=UTF-8"); 61 } else { 62 // 返回json格式数据 63 String json = ""; 64 try { 65 json = new GsonBuilder().disableHtmlEscaping() 66 .setDateFormat(FaceCloudConstant.DATE_FORMATTER_YMDHMS).create().toJson(response); 67 } catch (Exception e) { 68 e.printStackTrace(); 69 } 70 if (StringUtils.isNotBlank(callback)) { 71 json = callback + "(" + json + ")"; 72 } 73 rb = Response.ok(json); 74 rb.type("application/json;charset=UTF-8"); 75 } 76 rb.language(Locale.SIMPLIFIED_CHINESE); 77 return rb.build(); 78 } 79 }