您的位置:首页 > 理论基础 > 计算机网络

HttpURLConnection post 发送参数及图片 及接收测试

2014-09-11 12:37 525 查看
1、发送数据

String urlstr="http://10.21.38.103/testAction!test.action?kkbh="+kkbh;
URL url = new URL(urlstr);
HttpURLConnection huc=(HttpURLConnection)url.openConnection();

huc.setRequestProperty("content-type", "text/html");
huc.setRequestProperty("Content-Type","image/jpeg");
huc.setDoOutput(true);
huc.setDoInput(true);
huc.setRequestMethod("POST");
huc.setConnectTimeout(500000);
OutputStream pw=huc.getOutputStream();
pw.write(fileData);
pw.flush();
pw.close();
BufferedReader br=new BufferedReader(new InputStreamReader(huc.getInputStream()));


2、接收数据

package modules.action;

import java.io.BufferedReader;
import java.io.File;
import java.io.FileOutputStream;
import java.io.IOException;
import java.io.InputStream;
import java.io.InputStreamReader;
import java.io.ObjectInputStream;
import java.io.OutputStream;
import java.io.PrintWriter;
import java.text.SimpleDateFormat;
import java.util.Date;
import java.util.Enumeration;

import modules.request.TestReq;

import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.context.annotation.Scope;
import org.springframework.stereotype.Component;

@Component("testAction")
@Scope("prototype")
public class TestAction extends TestReq {
private static final Logger logger = LoggerFactory.getLogger(TestAction.class);
private static final long serialVersionUID = 1L;
protected String kkbh= "";
protected String fxlx= "";
protected String cdh= "";
protected String hphm= "";
protected String gcsj= "";

/**
* 查询
* @return
*/
public void test() {

//	logger.info(kkbh);

//getResponse().setContentType("Content-Type: text/plain;charset=UTF-8");
getResponse().setContentType("Content-Type: text/html; charset=UTF-8");
getResponse().setCharacterEncoding("UTF-8");
getResponse().setHeader("pragma", "no-cache");
getResponse().setHeader("Content-Type", "text/plain;charset=UTF-8");
getResponse().setHeader("cache-control", "no-cache");
try {
final PrintWriter out=getResponse().getWriter();
out.write("success");

Enumeration<String> name = getRequest().getParameterNames();
while(name.hasMoreElements()) {
String myName = name.nextElement();
if(myName.length()<=0)continue;
out.write(myName+"="+getRequest().getParameter(myName));
logger.info(myName+"="+getRequest().getParameter(myName));
}
} catch (IOException e1) {
// TODO Auto-generated catch block
e1.printStackTrace();
}

try {
InputStream inStream = getRequest().getInputStream();
downlodeImagelocal(inStream);
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}

}

/**
* @Description:下载图片图片到默认路径
* @author zhangguoli2
*/
public    String downlodeImagelocal( InputStream tis) {
StringBuilder pictureName;
//		InputStream tis = null;
pictureName = new StringBuilder();
OutputStream outZos = null;
String localurl = "";
if(null==tis)return "";
try {
pictureName.append(getCurrentDatetimeString() + "uploadpic.jpg");

localurl = "E:\\images\\" + pictureName.toString();

File outFile = new File(localurl);
outZos = new FileOutputStream(outFile);
//			tis = downLoadPicture(picurl);
//	tis =getImageFromNetByUrl(picurl);
// 创建缓冲区
byte[] buffer = new byte[1024];
int len = 0;
while ((len = tis.read(buffer)) != -1) {
outZos.write(buffer, 0, len);
}
return localurl;
} catch (Exception e) {
e.printStackTrace();
} finally {
try {
if (null != tis) {
tis.close();
}
outZos.flush();
outZos.close();
} catch (IOException e) {
e.printStackTrace();
}
}
return localurl;
}
/**
* 获取当前时间字符串,格式:"yyyy-MM-dd HH:mm:ss"
*
* @return 时间字符串
*/
public  String getCurrentDatetimeString() {
SimpleDateFormat formatter = new SimpleDateFormat("yyyy_MM_ddHH_mm_ss");
Date curDate = new Date(System.currentTimeMillis()); // 获取当前时间
return formatter.format(curDate);
}
public String getKkbh() {
return kkbh;
}

public void setKkbh(String kkbh) {
this.kkbh = kkbh;
}

public String getFxlx() {
return fxlx;
}

public void setFxlx(String fxlx) {
this.fxlx = fxlx;
}

public String getCdh() {
return cdh;
}

public void setCdh(String cdh) {
this.cdh = cdh;
}

public String getHphm() {
return hphm;
}

public void setHphm(String hphm) {
this.hphm = hphm;
}

public String getGcsj() {
return gcsj;
}

public void setGcsj(String gcsj) {
this.gcsj = gcsj;
}

}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: