HttpURLConnection向Servlet写入流

public static void main(String[] args) throws IOException {
		String r = AnalysisXML.getXml(); //要传入的xml字符串
		String path ="http://localhost:8080/axis/services/bxserver";
		java.net.URL url = new java.net.URL(path);  
		// 打开连接
        HttpURLConnection connection = (HttpURLConnection) url
                .openConnection();
        // 设置是否向connection输出,因为这个是post请求,参数要放在
        // http正文内,因此需要设为true
        connection.setDoOutput(true);
        connection.setDoInput(true);
        connection.setRequestMethod("POST");
        // Post 请求不能使用缓存
        connection.setUseCaches(false);
        connection.setInstanceFollowRedirects(true);
        connection.setRequestProperty("Content-Type",
                "text/xml");
		connection.connect(); 
		DataOutputStream out = new DataOutputStream(connection
                .getOutputStream());
        out.writeBytes(r); 
        out.flush();  
        out.close();
        BufferedReader reader = new BufferedReader(new InputStreamReader(
                connection.getInputStream()));
        String line;
        System.out.println("=============================");
        System.out.println("Contents of post request");
        System.out.println("=============================");
        while ((line = reader.readLine()) != null) {
            System.out.println(line);
        }
        System.out.println("=============================");
        System.out.println("Contents of post request ends");
        System.out.println("=============================");
        reader.close();
        connection.disconnect();
	}

Servlet中获取流信息:

String resultXml = "";
		boolean resultStr = true;
		String XMLData = null;
		StringBuffer tempStringBuffer = new StringBuffer();
		String tempString = null; 
		BufferedReader reader = request.getReader();
	    while ((tempString = reader.readLine()) != null){
	        tempStringBuffer.append(tempString);
	    } 
	    XMLData = tempStringBuffer.toString();


你可能感兴趣的:(HttpURLConnection向Servlet写入流)