62,628
社区成员
发帖
与我相关
我的任务
分享
public static Serializable sendRequest(String servlet_url, Serializable obj) throws Exception {
URL url = new URL(servlet_url);
HttpURLConnection con = (HttpURLConnection)url.openConnection();
con.setDoInput(true);
con.setDoOutput(true);
con.setUseCaches(false);
con.setRequestProperty("Content-Type", "application/octet-stream");
writeZIPObject(con.getOutputStream(), obj);
Serializable reply = null;
reply = (Serializable)readZIPObject(con.getInputStream());
con.disconnect();
Serializable result = reply.getData();
if (result instanceof Exception) {
throw ((Exception)result);
}
...
}
public static Serializable readZIPObject(InputStream in) throws IOException, ClassNotFoundException {
BufferedInputStream buffer = new BufferedInputStream(in);
GZIPInputStream gi = new GZIPInputStream(buffer);
ObjectInputStream oi = new ObjectInputStream(gi);
Serializable obj = (Serializable) oi.readObject();
oi.close();
gi.close();
buffer.close();
in.close();
return obj;
}
public static void writeZIPObject(OutputStream out, Serializable obj) throws IOException {
BufferedOutputStream buffer = new BufferedOutputStream(out);
GZIPOutputStream go = new GZIPOutputStream(buffer);
ObjectOutputStream oo = new ObjectOutputStream(go);
oo.close();
go.close();
buffer.close();
out.close();
}