restful介面POST方式請求
寫restful介面首先要開發服務端
先定義一下請求引數物件和返回引數型別:請求引數型別(ThirdMainBillBeanReq)和響應引數型別(ThirdMainBillBeanRes)
/**
*
*/
package com.deppon.foss.module.thirdpay.shared.domain;
import java.math.BigDecimal;
import java.util.Date;
import javax.xml.bind.annotation.XmlRootElement;
/**
* @author 200937
*
*/
@XmlRootElement(name = "ThirdMainBillBeanReq")
public class ThirdMainBillBeanReq {
/**
* 編號
*/
private String billNum;
/**
* 匯款時間
*/
private Date remitDate;
/**
* 匯款部門
*/
private String remitDept;
/**
* 款項所屬部門
*/
private String fundDept;
/**
* 匯款金額
*/
private BigDecimal remitTance;
/**
* 匯入賬號
*/
private String remitAccount;
/**
* 賬號型別
*/
private String accountType;
/**
* 已使用金額
*/
private BigDecimal alreadyamount;
/**
* 匯款人
*/
private String remitPerson;
/*******************get/set************************/
public String getBillNum() {
return billNum;
}
public void setBillNum(String billNum) {
this.billNum = billNum;
}
public Date getRemitDate() {
return remitDate;
}
public void setRemitDate(Date remitDate) {
this.remitDate = remitDate;
}
public String getRemitDept() {
return remitDept;
}
public void setRemitDept(String remitDept) {
this.remitDept = remitDept;
}
public String getFundDept() {
return fundDept;
}
public void setFundDept(String fundDept) {
this.fundDept = fundDept;
}
public BigDecimal getRemitTance() {
return remitTance;
}
public void setRemitTance(BigDecimal remitTance) {
this.remitTance = remitTance;
}
public String getRemitAccount() {
return remitAccount;
}
public void setRemitAccount(String remitAccount) {
this.remitAccount = remitAccount;
}
public String getAccountType() {
return accountType;
}
public void setAccountType(String accountType) {
this.accountType = accountType;
}
public BigDecimal getAlreadyamount() {
return alreadyamount;
}
public void setAlreadyamount(BigDecimal alreadyamount) {
this.alreadyamount = alreadyamount;
}
public String getRemitPerson() {
return remitPerson;
}
public void setRemitPerson(String remitPerson) {
this.remitPerson = remitPerson;
}
}
/**
*
*/
package com.deppon.foss.module.thirdpay.shared.domain;
import javax.xml.bind.annotation.XmlRootElement;
/**
* @author 200937
*
*/
@XmlRootElement(name = "ThirdMainBillBeanRes")
public class ThirdMainBillBeanRes {
/**
* 是否成功(1、成功,0、失敗)
*/
private String isSuccess;
/**
* 失敗原因
*/
private String faileReason;
/**
* 編號
*/
private String billNum;
/***************get/set*******************/
public String getIsSuccess() {
return isSuccess;
}
public void setIsSuccess(String isSuccess) {
this.isSuccess = isSuccess;
}
public String getFaileReason() {
return faileReason;
}
public void setFaileReason(String faileReason) {
this.faileReason = faileReason;
}
public String getBillNum() {
return billNum;
}
public void setBillNum(String billNum) {
this.billNum = billNum;
}
}
然後寫一個service進行業務處理:
/**
*
*/
package com.deppon.foss.module.thirdpay.server.service;
import javax.ws.rs.POST;
import javax.ws.rs.Path;
import javax.ws.rs.Consumes;
import javax.ws.rs.Produces;
import javax.ws.rs.core.MediaType;
import org.springframework.web.bind.annotation.RequestBody;
import org.springframework.web.bind.annotation.ResponseBody;
import com.deppon.foss.module.thirdpay.shared.domain.ThirdMainBillBeanReq;
import com.deppon.foss.module.thirdpay.shared.domain.ThirdMainBillBeanRes;
/**
* @author 200937
*
*/
//@Produces({"application/json"})
//@Consumes({"application/json"})
@Produces({/*MediaType.APPLICATION_XML,*/MediaType.APPLICATION_JSON })
@Consumes({MediaType.APPLICATION_JSON/*,MediaType.APPLICATION_XML*/})
public interface IThirdMainBillService {
/**
* APP對接財務自助-第三方匯款-即時到賬(儲存資訊)
* @author 200937
* @date 2014-11-05
* @param ThirdMainBillBeanReq
* @return ThirdMainBillBeanRes
*/
@POST
@Path("/InsertThirdMainBill")
public @ResponseBody ThirdMainBillBeanRes InsertThirdMainBill (@RequestBody ThirdMainBillBeanReq thirdMainBillReq);
}
/**
*
*/
package com.deppon.foss.module.thirdpay.server.service.impl;
import java.math.BigDecimal;
import java.util.UUID;
import javax.annotation.Resource;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import javax.ws.rs.core.Context;
import org.springframework.web.bind.annotation.RequestBody;
import org.springframework.web.bind.annotation.ResponseBody;
import com.deppon.fins.module.otherReceive.shared.domain.ESBHeaderConstant;
import com.deppon.foss.module.commonUtils.server.service.IFinsLogService;
import com.deppon.foss.module.thirdpay.server.dao.IThirdMainBillDao;
import com.deppon.foss.module.thirdpay.server.service.IThirdMainBillService;
import com.deppon.foss.module.thirdpay.shared.domain.ThirdMainBillBean;
import com.deppon.foss.module.thirdpay.shared.domain.ThirdMainBillBeanReq;
import com.deppon.foss.module.thirdpay.shared.domain.ThirdMainBillBeanRes;
/**
* @author 200937
*
*/
public class ThirdMainBillServiceImpl implements IThirdMainBillService {
@Resource
private IThirdMainBillDao thirdMainBillDao;
@Resource
private IFinsLogService finsLogService;
@Context HttpServletRequest request;
@Context HttpServletResponse response;
/**
* APP對接財務自助-第三方匯款-即時到賬(儲存資訊)
* @author 200937
* @date 2014-11-05
* @param ThirdMainBillBeanReq
* @return ThirdMainBillBeanRes
*/
@Override
public @ResponseBody ThirdMainBillBeanRes InsertThirdMainBill (@RequestBody ThirdMainBillBeanReq thirdMainBillReq) {
//設定相應header
response.setHeader(ESBHeaderConstant.VERSION, request.getHeader(ESBHeaderConstant.VERSION));
response.setHeader(ESBHeaderConstant.ESBSERVICECODE, request.getHeader(ESBHeaderConstant.ESBSERVICECODE));
response.setHeader(ESBHeaderConstant.REQUESTID, request.getHeader(ESBHeaderConstant.REQUESTID));
response.setHeader(ESBHeaderConstant.BUSINESSID, request.getHeader(ESBHeaderConstant.BUSINESSID));
response.setHeader(ESBHeaderConstant.MESSAGEFORMAT, request.getHeader(ESBHeaderConstant.MESSAGEFORMAT));
response.setHeader(ESBHeaderConstant.EXCHANGEPATTERN, request.getHeader(ESBHeaderConstant.EXCHANGEPATTERN));
response.setHeader(ESBHeaderConstant.SOURCESYSTEM, request.getHeader(ESBHeaderConstant.SOURCESYSTEM));
response.setHeader(ESBHeaderConstant.BACKSERVICECODE, request.getHeader(ESBHeaderConstant.BACKSERVICECODE));
response.setHeader(ESBHeaderConstant.TARGETSYSTEM, "FINS");
response.setHeader(ESBHeaderConstant.RESPONSEID, UUID.randomUUID().toString());
ThirdMainBillBeanRes thirdMainBillRes=new ThirdMainBillBeanRes();
ThirdMainBillBean thirdMainBill =new ThirdMainBillBean();
//判斷是否為空並且將請求物件轉換為第三方匯款物件
if(thirdMainBillReq == null){
thirdMainBillRes.setIsSuccess("0");
thirdMainBillRes.setFaileReason("請求物件為空");
response.setHeader(ESBHeaderConstant.RESULTCODE, "0");
return thirdMainBillRes;
}
if(thirdMainBillReq.getBillNum() !=null){
thirdMainBill.setBillNum(thirdMainBillReq.getBillNum());
}else{
thirdMainBillRes.setIsSuccess("0");
thirdMainBillRes.setFaileReason("編號為空");
response.setHeader(ESBHeaderConstant.RESULTCODE, "0");
return thirdMainBillRes;
}
if(thirdMainBillReq.getRemitDate() !=null){
thirdMainBill.setRemitDate(thirdMainBillReq.getRemitDate());
}else{
thirdMainBillRes.setIsSuccess("0");
thirdMainBillRes.setFaileReason("匯款時間為空");
response.setHeader(ESBHeaderConstant.RESULTCODE, "0");
return thirdMainBillRes;
}
if(thirdMainBillReq.getRemitDept()!=null){
thirdMainBill.setRemitDept(thirdMainBillReq.getRemitDept());
}else{
thirdMainBillRes.setIsSuccess("0");
thirdMainBillRes.setFaileReason("匯款部門為空");
response.setHeader(ESBHeaderConstant.RESULTCODE, "0");
return thirdMainBillRes;
}
if(thirdMainBillReq.getFundDept()!=null){
thirdMainBill.setFundDept(thirdMainBillReq.getFundDept());
}else{
thirdMainBillRes.setIsSuccess("0");
thirdMainBillRes.setFaileReason("款項所屬部門為空");
response.setHeader(ESBHeaderConstant.RESULTCODE, "0");
return thirdMainBillRes;
}
if(thirdMainBillReq.getRemitTance()!=null){
thirdMainBill.setRemitTance(thirdMainBillReq.getRemitTance());
}else{
thirdMainBillRes.setIsSuccess("0");
thirdMainBillRes.setFaileReason("匯款金額為空");
response.setHeader(ESBHeaderConstant.RESULTCODE, "0");
return thirdMainBillRes;
}
if(thirdMainBillReq.getRemitAccount()!=null){
thirdMainBill.setRemitAccount(thirdMainBillReq.getRemitAccount());
}else{
thirdMainBillRes.setIsSuccess("0");
thirdMainBillRes.setFaileReason("匯入賬號為空");
response.setHeader(ESBHeaderConstant.RESULTCODE, "0");
return thirdMainBillRes;
}
if(thirdMainBillReq.getAccountType()!=null){
thirdMainBill.setAccountType(thirdMainBillReq.getAccountType());
}else{
thirdMainBillRes.setIsSuccess("0");
thirdMainBillRes.setFaileReason("賬號型別為空");
response.setHeader(ESBHeaderConstant.RESULTCODE, "0");
return thirdMainBillRes;
}
if(thirdMainBillReq.getAlreadyamount()!=null){
thirdMainBill.setAlreadyamount(thirdMainBillReq.getAlreadyamount());
}else{
thirdMainBillRes.setIsSuccess("0");
thirdMainBillRes.setFaileReason("已使用金額為空");
response.setHeader(ESBHeaderConstant.RESULTCODE, "0");
return thirdMainBillRes;
}
if(thirdMainBillReq.getRemitPerson()!=null){
thirdMainBill.setRemitPerson(thirdMainBillReq.getRemitPerson());
}/*else{
thirdMainBillRes.setIsSuccess("0");
thirdMainBillRes.setFaileReason("匯款人為空");
response.setHeader(ESBHeaderConstant.RESULTCODE, "0");
return thirdMainBillRes;
}*/
//將初始化的初始化
//未使用金額
BigDecimal unuseamount=thirdMainBill.getRemitTance().subtract(thirdMainBill.getAlreadyamount());
thirdMainBill.setUnuseamount(unuseamount);
boolean result=false;
try{
result=thirdMainBillDao.addThirdMainBill(thirdMainBill);
if(result){
thirdMainBillRes.setIsSuccess("1");
thirdMainBillRes.setBillNum(thirdMainBill.getBillNum());
response.setHeader(ESBHeaderConstant.RESULTCODE, "1");
return thirdMainBillRes;
}else{
thirdMainBillRes.setIsSuccess("0");
thirdMainBillRes.setFaileReason("插入失敗");
response.setHeader(ESBHeaderConstant.RESULTCODE, "0");
return thirdMainBillRes;
}
}catch (Exception e) {
// TODO: handle exception
thirdMainBillRes.setIsSuccess("0");
thirdMainBillRes.setFaileReason("插入資料錯誤");
response.setHeader(ESBHeaderConstant.RESULTCODE, "0");
finsLogService.debug(ThirdMainBillServiceImpl.class, "InsertThirdMainBill", "", "插入資料錯誤", e);
return thirdMainBillRes;
}
}
}
具體的DAO層就不寫了。
接著就是配置Spring配置問價了
<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://www.springframework.org/schema/beans"
xmlns:aop="http://www.springframework.org/schema/aop" xmlns:context="http://www.springframework.org/schema/context"
xmlns:tx="http://www.springframework.org/schema/tx" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns:jaxws="http://cxf.apache.org/jaxws" xmlns:jee="http://www.springframework.org/schema/jee"
xmlns:jaxrs="http://cxf.apache.org/jaxrs"
xsi:schemaLocation="http://www.springframework.org/schema/beans
http://www.springframework.org/schema/beans/spring-beans-2.5.xsd
http://www.springframework.org/schema/aop
http://www.springframework.org/schema/aop/spring-aop-2.5.xsd
http://www.springframework.org/schema/context
http://www.springframework.org/schema/context/spring-context-2.5.xsd
http://www.springframework.org/schema/tx http://www.springframework.org/schema/tx/spring-tx-2.5.xsd
http://www.springframework.org/schema/jee http://www.springframework.org/schema/jee/spring-jee-2.5.xsd
http://cxf.apache.org/jaxws
http://cxf.apache.org/schemas/jaxws.xsd
http://cxf.apache.org/jaxrs
http://cxf.apache.org/schemas/jaxrs.xsd">
<import resource="classpath:META-INF/cxf/cxf.xml" />
<import resource="classpath:META-INF/cxf/cxf-extension-xml.xml" />
<import resource="classpath:META-INF/cxf/cxf-servlet.xml" />
<!-- 定義jackson 日期轉換格式 -->
<bean id="simpleDataformat" class="java.text.SimpleDateFormat">
<constructor-arg value="yyyy-MM-dd HH:mm:ss"></constructor-arg>
</bean>
<!-- jackson mapper -->
<bean id="mapper" class="org.codehaus.jackson.map.ObjectMapper">
<property name="dateFormat" ref="simpleDataformat"></property>
</bean>
<!-- jackson provider -->
<bean id="jacksonJsonProvider" class="org.codehaus.jackson.jaxrs.JacksonJsonProvider">
<property name="mapper" ref="mapper" />
</bean>
<!--APP-財務自助-第三方匯款 start-->
<bean id="thirdMainBillService"
class="com.deppon.foss.module.thirdpay.server.service.impl.ThirdMainBillServiceImpl" />
<jaxrs:server id="app_thirdMainBillService" address="/ThirdMainBillService">
<jaxrs:serviceBeans>
<ref bean="thirdMainBillService" />
</jaxrs:serviceBeans>
<jaxrs:extensionMappings>
<entry key="json" value="application/json" />
</jaxrs:extensionMappings>
<jaxrs:languageMappings>
<entry key="en" value="en-gb" />
</jaxrs:languageMappings>
<jaxrs:providers>
<ref bean="jacksonJsonProvider" />
</jaxrs:providers>
<jaxrs:inInterceptors><!-- 加入訊息攔截器 -->
<bean class="org.apache.cxf.interceptor.LoggingInInterceptor"></bean>
</jaxrs:inInterceptors>
<jaxrs:outInterceptors>
<bean class="org.apache.cxf.interceptor.LoggingOutInterceptor"></bean>
</jaxrs:outInterceptors>
</jaxrs:server>
<!--APP-財務自助-第三方匯款 end-->
</beans>
記住這裡面加了一個json轉換器jacksonJsonProvider類,如何加上這個使用的訪問方式就應該用位元組流,引數為json String形式的才可以。
我有一個APPClient客戶端訪問的這個客戶端訪問就要服務端去掉JacksonJsonProvider這個json轉化器了。
/**
*
*/
package client;
import java.io.UnsupportedEncodingException;
import java.math.BigDecimal;
import java.text.ParseException;
import java.text.SimpleDateFormat;
import java.util.Date;
import java.util.HashMap;
import java.util.Map;
import java.util.UUID;
import javax.servlet.http.HttpServletRequest;
import javax.ws.rs.core.Context;
import org.apache.cxf.jaxrs.client.WebClient;
import org.apache.struts2.ServletActionContext;
import org.codehaus.jackson.JsonParser;
import org.codehaus.jackson.jaxrs.JacksonJsonProvider;
import domain.ESBHeaderConstant;
import domain.OtherCheckSheetReq;
import domain.OtherCheckSheetRes;
import domain.OtherCheckSheetletn;
import domain.ThirdMainBillBeanReq;
import domain.ThirdMainBillBeanRes;
import domain.WorkFlowInfo;
import domain.WorkFlowReq;
import domain.WorkFlowRes;
import javax.ws.rs.core.MultivaluedMap;
/**
* @author 200937
*
*/
public class AppWebClient {
private static final String CATEGORY_URL =
"http://localhost:8080/financManager/webservice/ThirdMainBillService/";
// "http://10.224.72.116:8881/wfs/webservice/verifyWorkFlow/";
// "http://192.168.67.12:8580/esb2/rs/";
private static final String TYPE_JSON = "application/json";
public static void main(String[] args) {
// TODO Auto-generated method stub
WebClient client = WebClient.create(CATEGORY_URL);
client.path("InsertThirdMainBill").accept(TYPE_JSON).type(TYPE_JSON);//"InsertThirdMainBill".encoding("UTF-8")
// System.out.println("begin");
// WorkFlowReq workFlowReq=new WorkFlowReq();
// WorkFlowInfo workFlowInfo=new WorkFlowInfo();
// workFlowInfo.setProcessInstId("2222");
// workFlowInfo.setProcessDefName("asdgadg");
//
// WorkFlowRes workFlowRes=client.post(workFlowReq, WorkFlowRes.class);
// System.out.println(workFlowRes.toString());
//
client.header(ESBHeaderConstant.VERSION, "0.1");
client.header(ESBHeaderConstant.ESBSERVICECODE, "ESB_APP2ESB_INSERT_FINS");
client.header(ESBHeaderConstant.REQUESTID, UUID.randomUUID().toString());
client.header(ESBHeaderConstant.BUSINESSID, UUID.randomUUID().toString());
client.header(ESBHeaderConstant.MESSAGEFORMAT, "json");
client.header(ESBHeaderConstant.EXCHANGEPATTERN, "1");
client.header(ESBHeaderConstant.SOURCESYSTEM, "APP");
client.header("accept", "application/json");//text/html,application/xml,
client.header("Content-Type", "application/json;charset=UTF-8"); //;charset=UTF-8
ThirdMainBillBeanReq thirdMainBillBeanReq =new ThirdMainBillBeanReq();
thirdMainBillBeanReq.setBillNum("w0112234443321");//編號
Date remitDate=new Date();
SimpleDateFormat sdf=new SimpleDateFormat("yyyy-MM-dd");
try {
remitDate=sdf.parse("1991-05-19");
} catch (ParseException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
thirdMainBillBeanReq.setRemitDate(remitDate);//匯款時間
thirdMainBillBeanReq.setRemitDept("DP10270");//匯款部門
thirdMainBillBeanReq.setFundDept("DP24111");//款項所屬部門
BigDecimal remitTance=new BigDecimal(145);
thirdMainBillBeanReq.setRemitTance(remitTance);//匯款金額
thirdMainBillBeanReq.setRemitAccount("27105555");//匯入賬號
thirdMainBillBeanReq.setAccountType("支付寶");//賬號型別
BigDecimal alreadyamount=new BigDecimal(55);
thirdMainBillBeanReq.setAlreadyamount(alreadyamount);//已使用金額
thirdMainBillBeanReq.setRemitPerson("李偉強");
ThirdMainBillBeanRes s=client.post(thirdMainBillBeanReq,ThirdMainBillBeanRes.class);
System.out.println(s.toString());
}
}
這個是定義client.header("Content-Type", "application/json;charset=UTF-8"); //;charset=UTF-8
是將傳遞的引數物件轉換整json方式這個是jar包中自動轉換的。
還有一種是先將物件轉換成Json String然後通過位元組流將物件傳遞過去然後在Spring配置檔案中加入Json轉換器(Json轉換器請看上一篇json轉化器)的形式。
我做了一個客戶端但不是訪問這個的 你們改訪問物件即可。
/**
*
*/
package client;
import java.io.BufferedReader;
import java.io.BufferedWriter;
import java.io.InputStream;
import java.io.InputStreamReader;
import java.io.OutputStreamWriter;
import java.net.HttpURLConnection;
import java.net.URL;
import java.text.ParseException;
import java.text.SimpleDateFormat;
import java.util.ArrayList;
import java.util.Date;
import java.util.List;
import common.JsonUtil;
import domain.Accessory;
import domain.ReceivableInfo;
import domain.SpareAreaSubReq;
import domain.SpareAreaSubletn;
/**
* @author 200937
*
*/
public class ClentTest {
public static void main(String [] arg) throws Exception{
URL url = new URL("http://localhost:8080/financManager/webservice/SpareAreaSubRestServer/addSpareAreaSubSP");// 提交地址
HttpURLConnection httpURLConnection = (HttpURLConnection) url.openConnection();
httpURLConnection.setDoOutput(true);// 開啟寫入屬性
httpURLConnection.setDoInput(true);// 開啟讀取屬性
httpURLConnection.setRequestMethod("POST");// 設定提交方法
httpURLConnection.setRequestProperty("Content-Type","Application/json;charset=UTF-8");//;charset=UTF-8
// httpURLConnection.setRequestProperty("SOAPAction", " http://WebXml.com.cn/getWeatherbyCityName");
// httpURLConnection.setRequestProperty("User-Agent", "Jakarta Commons-HttpClient/3.1");
httpURLConnection.setConnectTimeout(50000);// 連線超時時間
httpURLConnection.setReadTimeout(50000);
httpURLConnection.connect();
// SpareAreaSubReq spareAreaSubReq =new SpareAreaSubReq();
// SpareAreaSubletn spareAreaSub=new SpareAreaSubletn();
// spareAreaSub.setSubletnumber("YQ2014110001");
// spareAreaSubReq.setSpareAreaSubletn(spareAreaSub);
SpareAreaSubReq spareAreaSubReq =new SpareAreaSubReq();
SpareAreaSubletn spareAreaSub=new SpareAreaSubletn();
spareAreaSub.setSubletnumber("YQ2014110001");
ReceivableInfo receivableInfo =new ReceivableInfo();
SimpleDateFormat sim=new SimpleDateFormat("yyyy-MM-dd");
String str="2014-10-12";
Date date=null;
try {
date = sim.parse(str);
} catch (ParseException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
receivableInfo.setReceivabledate(date);//應收日期
receivableInfo.setReceivablesubletsum(111.00);//應收金額
ReceivableInfo receivableInfo2 =new ReceivableInfo();
String str2="2014-10-12";
Date date2=null;
try {
date2 = sim.parse(str2);
} catch (ParseException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
// receivableInfo2.setReceivabledate(date2);//應收日期
// receivableInfo2.setReceivablesubletsum(111.00);//應收金額
List<ReceivableInfo> receivableInfoList =new ArrayList<ReceivableInfo>();
receivableInfoList.add(receivableInfo);
receivableInfoList.add(receivableInfo2);
spareAreaSub.setReceivableInfo(receivableInfoList);//應收資訊
spareAreaSub.setContratworknum("2000033");//合同工作流號
spareAreaSub.setSubletdeptcode("DP10270");//轉租部門編碼
spareAreaSub.setFinancedeptcode("DP10244");//財務部編碼
spareAreaSub.setSignType("OVER");//簽訂型別NEW_SIGN\RENEW\ChANGE\OVER
spareAreaSub.setPaymenttype(12);//付款方式
spareAreaSub.setLeaseename("卡卡西");//承租方名稱
String str3="2014-10-12";
Date date3=null;
try {
date3 = sim.parse(str3);
} catch (ParseException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
spareAreaSub.setSubletstartdate(date3);//轉租起租日期
String str4="2014-10-12";
Date date4=null;
try {
date4 = sim.parse(str4);
} catch (ParseException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
spareAreaSub.setSubletenddate(date4);//轉租結束日期
spareAreaSub.setDepositaccount(200);//押金金額
String str5="2014-10-12";
Date date5=null;
try {
date5 = sim.parse(str5);
} catch (ParseException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
spareAreaSub.setRentfreestartdate(date5);//免租開始日期
String str6="2014-10-12";
Date date6=null;
try {
date6 = sim.parse(str6);
} catch (ParseException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
spareAreaSub.setRentfreeenddate(date6);//免租結束日期
String str7="2014-10-10";
Date date7=null;
try {
date7 = sim.parse(str7);
} catch (ParseException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
spareAreaSub.setAdvanceenddate(date7);
Accessory acce=new Accessory();
acce.setAccessoryName("生活真美好");
acce.setAccessoryType("Excel");
acce.setAccessoryUrl("http//..");
List<Accessory> acceList =new ArrayList<Accessory>();
acceList.add(acce);
spareAreaSub.setAccessory(acceList);
spareAreaSubReq.setSpareAreaSubletn(spareAreaSub);
String JsonSpareAreaSubReq=JsonUtil.getJSONString(spareAreaSubReq);
BufferedWriter out = new BufferedWriter(new OutputStreamWriter(httpURLConnection.getOutputStream()));
out.write(JsonSpareAreaSubReq);
out.flush();
out.close();
//讀取post之後的返回值
BufferedReader in = new BufferedReader(new InputStreamReader((InputStream) httpURLConnection.getInputStream(),"UTF-8"));
String line = null;
StringBuilder sb = new StringBuilder();
while ((line = in.readLine()) != null) {
sb.append(line);
}
in.close();
System.out.println("client:" + sb.toString());
httpURLConnection.disconnect();//斷開連線
}
}