/** * 可以传对象的请求转发,对象已流形式放入HTTP中 */ public static Object doPost(Map<String,Object> parmMap,String url) { Object object = null; HttpClient hc = new HttpClient(); String fullURL = PropertiesUtils.getValue("app") + url; PostMethod pm = new PostMethod(fullURL); pm.setRequestHeader("Content-Type","application/octet-stream"); RequestEntity requestEntity = new ByteArrayRequestEntity(SerializationUtils.serialize(parmMap)); pm.setRequestEntity(requestEntity); ObjectInputStream ois = null; try { hc.executeMethod(pm); ois = new ObjectInputStream(pm.getResponseBodyAsStream()); object = ois.readObject(); } catch (HttpException e) { e.printStackTrace(); } catch (Exception e) { e.printStackTrace(); } finally { try { ois.close(); } catch (IOException e) { e.printStackTrace(); } } return object; }
/** * @param request * @param response * @param o 流化的对象 * 将结果对象写入输出流中 */ protected void processStreamResponse(HttpServletRequest request,HttpServletResponse response,Object o) { byte[] bt = SerializationUtils.serialize(o); OutputStream out = null; try { out = response.getOutputStream(); out.write(bt); out.close(); } catch (IOException e) { if (null != out) { try { out.close(); } catch (IOException e1) { log.error(e.getMessage(),e); } } log.error(e.getMessage(),e); } }
/** * @param request * @param response * @return 从输入流中读取对象参数 */ protected Map<String, Object> processStreamRequest(HttpServletRequest request,HttpServletResponse response) { ObjectInputStream oi = null; Map<String, Object> map = null; try { oi = new ObjectInputStream(request.getInputStream()); } catch (IOException e) { log.error(e.getMessage(),e); } try { map = (HashMap<String, Object>) oi.readObject(); } catch (IOException e) { log.error(e.getMessage(),e); } catch (ClassNotFoundException e) { log.error(e.getMessage(),e); } return map; }
相关推荐
《深入解析httpclient.jar及其与code.jar的关联》 在Java开发中,HTTP通信是不可或缺的一部分,而Apache HttpClient库正是Java实现HTTP客户端操作的重要工具。本文将深入探讨httpclient.jar包,以及它与code.jar包...
### Httpclient官网教程中文版知识点总结 #### 一、引言 HTTP协议作为互联网的核心通信标准之一,在现代网络服务及物联网设备中扮演着至关重要的角色。随着技术的发展,越来越多的应用和服务依赖于HTTP协议来实现...
HttpClient 4.2.1版本引入了一些重要的改进和修复,以提高性能和稳定性。以下是一些关键特性: 1. **连接管理**:HttpClient 4.2.1引入了更完善的连接管理机制,允许开发者控制连接的创建、复用和关闭。`...
例如,在HttpClient 3.x中,代码可能会使用`***mons.httpclient.HttpClient`类和`***mons.httpclient.methods.GetMethod`等,而在4.x版本中,这些都被新的API所替代。程序员需要熟悉`org.apache....
赠送jar包:httpclient-4.2.5.jar; 赠送原API文档:httpclient-4.2.5-javadoc.jar; 赠送源代码:httpclient-4.2.5-sources.jar; 赠送Maven依赖信息文件:httpclient-4.2.5.pom; 包含翻译后的API文档:httpclient...
本文将深入探讨HttpClient 4.2.1的核心特性和使用方法,帮助开发者更好地理解和应用这个强大的工具。 一、HttpClient简介 HttpClient是一个开放源码的Java库,由Apache软件基金会维护。它为Java程序员提供了一个...