代码如下:
写道
import java.net.HttpURLConnection;
import java.net.MalformedURLException;
import java.net.URI;
import java.net.URISyntaxException;
import java.net.URL;
import java.util.Map;
import org.apache.http.HttpResponse;
import org.apache.http.client.methods.HttpGet;
import org.apache.http.impl.client.DefaultHttpClient;
import org.apache.http.params.BasicHttpParams;
import org.apache.http.params.HttpConnectionParams;
import org.apache.http.params.HttpParams;
public class HttpRequestUtils {
public static HttpResponse getHttpResponse(String url, Map<String, String> params) throws Exception{
HttpParams httpParameters = new BasicHttpParams();
HttpConnectionParams.setConnectionTimeout(httpParameters, 2 * 60 * 100);
HttpConnectionParams.setSoTimeout(httpParameters, 2 * 60 * 100);
DefaultHttpClient client = new DefaultHttpClient(httpParameters);
HttpGet httpGet = new HttpGet(new URI(url));
for(Map.Entry<String, String> entry : params.entrySet()){
httpGet.setHeader(entry.getKey(), entry.getValue());
}
return client.execute(httpGet);
}
public static HttpURLConnection getUrlConnection(String url, int bufferSize) throws Exception{
URL target = new URL(url);
HttpURLConnection conn = (HttpURLConnection) target.openConnection();
conn.setConnectTimeout(30000);
conn.setReadTimeout(30000);
conn.setDoOutput(true);
conn.setDoInput(true);
conn.setUseCaches(false);
conn.setRequestMethod("POST");
conn.setRequestProperty("connection", "Keep-Alive");
conn.setChunkedStreamingMode(bufferSize);
conn.setRequestProperty("user-agent", "Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; SV1)");
conn.setRequestProperty("Charsert", "UTF-8");
conn.setRequestProperty("contentType", "UTF-8");
conn.setRequestProperty("timenow", String.valueOf(System.currentTimeMillis()));
return conn;
}
}
import java.net.MalformedURLException;
import java.net.URI;
import java.net.URISyntaxException;
import java.net.URL;
import java.util.Map;
import org.apache.http.HttpResponse;
import org.apache.http.client.methods.HttpGet;
import org.apache.http.impl.client.DefaultHttpClient;
import org.apache.http.params.BasicHttpParams;
import org.apache.http.params.HttpConnectionParams;
import org.apache.http.params.HttpParams;
public class HttpRequestUtils {
public static HttpResponse getHttpResponse(String url, Map<String, String> params) throws Exception{
HttpParams httpParameters = new BasicHttpParams();
HttpConnectionParams.setConnectionTimeout(httpParameters, 2 * 60 * 100);
HttpConnectionParams.setSoTimeout(httpParameters, 2 * 60 * 100);
DefaultHttpClient client = new DefaultHttpClient(httpParameters);
HttpGet httpGet = new HttpGet(new URI(url));
for(Map.Entry<String, String> entry : params.entrySet()){
httpGet.setHeader(entry.getKey(), entry.getValue());
}
return client.execute(httpGet);
}
public static HttpURLConnection getUrlConnection(String url, int bufferSize) throws Exception{
URL target = new URL(url);
HttpURLConnection conn = (HttpURLConnection) target.openConnection();
conn.setConnectTimeout(30000);
conn.setReadTimeout(30000);
conn.setDoOutput(true);
conn.setDoInput(true);
conn.setUseCaches(false);
conn.setRequestMethod("POST");
conn.setRequestProperty("connection", "Keep-Alive");
conn.setChunkedStreamingMode(bufferSize);
conn.setRequestProperty("user-agent", "Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; SV1)");
conn.setRequestProperty("Charsert", "UTF-8");
conn.setRequestProperty("contentType", "UTF-8");
conn.setRequestProperty("timenow", String.valueOf(System.currentTimeMillis()));
return conn;
}
}
public String sendPostXml(String url, String postXml) { StringBuffer sb = new StringBuffer(); BufferedReader reader = null; OutputStreamWriter out = null; try { HttpURLConnection con = HttpRequestUtils.getUrlConnection(url, postXml.length()); con.setRequestProperty("Pragma:", "no-cache"); con.setRequestProperty("Cache-Control", "no-cache"); con.setRequestProperty("Content-Type", "text/xml"); out = new OutputStreamWriter(con .getOutputStream()); out.write(new String(postXml.getBytes("UTF-8"))); out.flush(); out.close(); //获取post端的响应的数据 reader = new BufferedReader(new InputStreamReader(con .getInputStream())); String lines; while ((lines = reader.readLine()) != null) { lines = new String(lines.getBytes(), "UTF-8"); sb.append(lines); } reader.close(); } catch (Exception e) { // TODO Auto-generated catch block e.printStackTrace(); }finally{ if (out != null) { try { out.close(); } catch (IOException e) { // TODO Auto-generated catch block e.printStackTrace(); } } if (reader != null) { try { reader.close(); } catch (IOException e) { // TODO Auto-generated catch block e.printStackTrace(); } } } return sb.toString(); }
相关推荐
根据给定的文件信息,我们可以总结出以下关于“JAVA postxml”的相关知识点: ### JAVA实现HTTP POST XML 在Java中,实现HTTP POST请求并发送XML数据是常见的需求,尤其是在与Web服务进行交互时。下面将详细阐述...
发送XML报文通常涉及到POST或GET请求,这里以POST请求为例,因为POST更适合发送大量数据,如XML文档。 1. **创建XML文档** 在发送XML之前,我们需要先构建XML文档。可以使用DOM(Document Object Model)或者SAX...
java http-post xml格式客户端请求代码
- **发送数据**:将之前构建的XML字符串转换为字节数组,并通过`DataOutputStream`写入到连接的输出流中,完成数据的发送。 - **接收响应**:通过`BufferedReader`读取服务器的响应,将读取的每一行追加到`...
在 Java 中,可以使用 java.net 包和 java.io 包来实现 HTTP Post XML 的功能。具体来说,可以使用 URL 和 URLConnection 类来建立到服务端的连接,然后使用 DataOutputStream 和 DataInputStream 类来发送和接收 ...
在IT行业中,Java和XML是两个非常重要的技术。Java是一种多平台、面向对象的编程语言,而XML(Extensible Markup Language)则是一种用于存储和传输数据的标记语言。当我们将两者结合,特别是在构建Web应用程序时,...
在Java编程中,生成XML文件并发送报文是一项常见的任务,尤其在系统间的数据交换、API调用或者网络通信中。XML(eXtensible Markup Language)是一种结构化数据表示语言,具有良好的可读性和可扩展性,是数据传输的...
HttpClient Post提交多文件及多个普通参数,已经封装成工具类。 需传入 要请求的url 普通参数map 例 map.put("param1","张三"); 需要传入的文件流map 其中key为文件名 服务端接收无乱码。
// 将Page对象转换为XML流 JAXBContext context = JAXBContext.newInstance(Page.class); Marshaller marshaller = context.createMarshaller(); ByteArrayOutputStream out = new ByteArrayOutputStream(); ...
为了处理 POST 请求中的 XML 数据,`dxServlet.java` 使用了 SAX(Simple API for XML)解析器。SAX 是一种基于事件驱动的 XML 解析方式,非常适合大型文档的解析。它不一次性加载整个 XML 文档到内存中,而是随着...
《Java, XML和Web服务宝典》是一本深入探讨Java编程、XML技术以及Web服务的综合性书籍,旨在帮助读者全面掌握这些关键技术,并将其应用于实际开发中。以下将详细阐述其中涉及的重要知识点: **Java** Java是一种...
与GET请求不同,POST请求的数据通常包含在请求正文中,这使得它适合传输大体积或敏感数据,如XML文档。 要实现HTTP POST发送XML数据,我们需要一个客户端库来构建和发送HTTP请求。在这个场景下,`commons-...
在给定的代码片段中,主要展示了如何使用Java中的Apache HttpClient库发送一个包含XML数据的POST请求,并接收响应。下面是对关键部分的详细分析: 1. **导入必要的库**:代码首先导入了处理网络请求、输入输出流...
Java XML 编程指南书籍源码是一份宝贵的资源,它涵盖了使用Java进行XML处理的各种核心技术和实践。XML(可扩展标记语言)作为一种数据交换和存储格式,在软件开发中扮演着重要角色,尤其是在分布式系统和Web服务中。...
`javax.xml.stream.XMLInputFactory`用于创建输入流,`XMLStreamReader`或`XMLStreamWriter`进行读写操作。 5. **Java Servlet与Web应用** - Servlet是Java EE中的一个组件,用于接收HTTP请求并返回响应。在本项目...
9. **RESTful API**:虽然不是XML特有的,但在Java中,XML常用于构建RESTful Web服务的数据交换格式,如通过HTTP的GET、POST请求发送和接收XML数据。 “XML Programming in Java.pdf”很可能详细介绍了这些概念和...
例如,用户发送一个包含XML数据的POST请求,servlet可以解析这个XML并根据内容执行相应的业务逻辑,然后返回结果,也可以生成XML响应。 ```java import javax.servlet.*; import javax.servlet.http.*; import java...
在Java中,JDOM库被广泛用来解析和构建XML文档,它提供了一种简单直观的方式来操作XML元素和属性。 当涉及到从XML文件导入数据到数据库时,首先我们需要使用JDOM读取XML文件。JDOM提供了SAXBuilder类,可以将XML...
接着,我们将XML数据转换为字节流并写入到连接的输出流中。最后,我们读取服务器的响应并进行处理。 当与PHP服务器交互时,PHP可以通过`$_POST`变量接收到POST数据。在PHP端,你可以使用`file_get_contents('...