| 
					
				 | 
			
			
				@@ -0,0 +1,436 @@ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+package com.ym.mec.util.http; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+import java.io.File; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+import java.io.FileOutputStream; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+import java.io.IOException; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+import java.io.InputStream; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+import java.nio.charset.Charset; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+import java.security.KeyManagementException; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+import java.security.KeyStoreException; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+import java.security.NoSuchAlgorithmException; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+import java.util.ArrayList; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+import java.util.List; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+import java.util.Map; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+import java.util.Map.Entry; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+import org.apache.commons.beanutils.ConvertUtils; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+import org.apache.commons.io.FileUtils; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+import org.apache.commons.io.IOUtils; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+import org.apache.commons.lang.StringUtils; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+import org.apache.http.HttpEntity; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+import org.apache.http.HttpResponse; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+import org.apache.http.NameValuePair; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+import org.apache.http.client.entity.UrlEncodedFormEntity; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+import org.apache.http.client.methods.HttpGet; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+import org.apache.http.client.methods.HttpPost; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+import org.apache.http.entity.ContentType; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+import org.apache.http.entity.StringEntity; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+import org.apache.http.entity.mime.MultipartEntityBuilder; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+import org.apache.http.impl.client.CloseableHttpClient; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+import org.apache.http.impl.client.HttpClients; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+import org.apache.http.message.BasicNameValuePair; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+import org.apache.http.util.EntityUtils; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+import com.ym.mec.util.compress.ZipUtil; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+public class HttpUtil { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	/** 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	 * POST请求http url 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	 *  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	 * @param url 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	 *            URL 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	 * @param parameterMap 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	 *            请求参数 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	 * @return 返回结果 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	 * @throws IOException  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	 */ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	public static String postForHttp(String url, Map<String, Object> parameterMap) throws IOException { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		String result = null; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		CloseableHttpClient httpClient = HttpClients.createDefault(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		HttpPost httpPost = new HttpPost(url); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		try { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+			List<NameValuePair> nameValuePairs = new ArrayList<NameValuePair>(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+			if (parameterMap != null) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+				for (Entry<String, Object> entry : parameterMap.entrySet()) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+					String name = entry.getKey(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+					String value = ConvertUtils.convert(entry.getValue()); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+					if (StringUtils.isNotEmpty(name)) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+						nameValuePairs.add(new BasicNameValuePair(name, value)); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+					} 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+				} 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+			} 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+			httpPost.setEntity(new UrlEncodedFormEntity(nameValuePairs, "UTF-8")); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+			HttpResponse httpResponse = httpClient.execute(httpPost); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+			HttpEntity httpEntity = httpResponse.getEntity(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+			result = EntityUtils.toString(httpEntity, "UTF-8"); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+			EntityUtils.consume(httpEntity); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		} finally { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+			httpPost.releaseConnection(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+			httpClient.close(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		} 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		return result; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	} 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	/** 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	 * POST请求https url 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	 *  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	 * @param url 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	 *            URL 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	 * @param parameterMap 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	 *            请求参数 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	 * @return 返回结果 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	 * @throws IOException  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	 * @throws NoSuchAlgorithmException  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	 * @throws KeyManagementException  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	 * @throws KeyStoreException  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	 */ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	public static String postForHttps(String url, Map<String, Object> parameterMap) throws IOException, NoSuchAlgorithmException, KeyManagementException, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+			KeyStoreException { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		String result = null; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		CloseableHttpClient httpClient = SimpleHttpsClient.getInstance(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		HttpPost httpPost = new HttpPost(url); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		try { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+			List<NameValuePair> nameValuePairs = new ArrayList<NameValuePair>(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+			if (parameterMap != null) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+				for (Entry<String, Object> entry : parameterMap.entrySet()) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+					String name = entry.getKey(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+					String value = ConvertUtils.convert(entry.getValue()); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+					if (StringUtils.isNotEmpty(name)) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+						nameValuePairs.add(new BasicNameValuePair(name, value)); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+					} 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+				} 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+			} 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+			httpPost.setEntity(new UrlEncodedFormEntity(nameValuePairs, "UTF-8")); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+			HttpResponse httpResponse = httpClient.execute(httpPost); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+			HttpEntity httpEntity = httpResponse.getEntity(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+			result = EntityUtils.toString(httpEntity, "UTF-8"); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+			EntityUtils.consume(httpEntity); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		} finally { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+			httpPost.releaseConnection(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+			httpClient.close(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		} 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		return result; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	} 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	/** 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	 * POST请求https url 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	 *  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	 * @param url 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	 *            URL 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	 * @param json 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	 *            请求参数 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	 * @param headers 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	 *            请求头参数 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	 * @return 返回结果 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	 * @throws IOException  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	 * @throws NoSuchAlgorithmException  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	 * @throws KeyManagementException  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	 * @throws KeyStoreException  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	 */ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	public static String postForHttps(String url, String json, Map<String, String> headers) throws IOException, NoSuchAlgorithmException, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+			KeyManagementException, KeyStoreException { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		String result = null; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		CloseableHttpClient httpClient = SimpleHttpsClient.getInstance(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		HttpPost httpPost = new HttpPost(url); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		if (headers != null && headers.size() > 0) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+			for (Entry<String, String> entry : headers.entrySet()) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+				httpPost.setHeader(entry.getKey(), entry.getValue()); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+			} 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		} 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		try { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+			httpPost.setEntity(new StringEntity(json, "UTF-8")); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+			HttpResponse httpResponse = httpClient.execute(httpPost); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+			HttpEntity httpEntity = httpResponse.getEntity(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+			result = EntityUtils.toString(httpEntity, "UTF-8"); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+			EntityUtils.consume(httpEntity); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		} finally { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+			httpPost.releaseConnection(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+			httpClient.close(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		} 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		return result; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	} 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	/** 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	 * 带附件的方法 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	 * @param url 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	 * @param parameterMap 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	 * @param filePath 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	 * @return 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	 * @throws IOException 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	 * @throws NoSuchAlgorithmException 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	 * @throws KeyManagementException 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	 * @throws KeyStoreException 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	 */ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	public static String postForHttps(String url, Map<String, Object> parameterMap, String filePath) throws IOException, NoSuchAlgorithmException, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+			KeyManagementException, KeyStoreException { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		File file = new File(filePath); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		String result = null; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		CloseableHttpClient httpClient = HttpClients.createDefault(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		HttpPost httpPost = new HttpPost(url); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		MultipartEntityBuilder builder = MultipartEntityBuilder.create(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		try { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+			if (parameterMap != null) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+				for (Entry<String, Object> entry : parameterMap.entrySet()) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+					String name = entry.getKey(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+					String value = ConvertUtils.convert(entry.getValue()); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+					if (StringUtils.isNotEmpty(name)) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+						builder.addTextBody(name, value); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+					} 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+				} 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+			} 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+			builder.addBinaryBody(file.getName(), file, ContentType.create("application/zip"), file.getName() + ".zip"); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+			httpPost.setEntity(builder.build()); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+			HttpResponse httpResponse = httpClient.execute(httpPost); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+			HttpEntity httpEntity = httpResponse.getEntity(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+			result = EntityUtils.toString(httpEntity, "UTF-8"); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+			EntityUtils.consume(httpEntity); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		} finally { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+			httpPost.releaseConnection(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+			httpClient.close(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		} 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		return result; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	} 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	/** 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	 * post请求 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	 * @param url 请求地址 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	 * @param parameter 参数 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	 * @param headers 头信息 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	 * @param fileMap 附件 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	 * @param contentType 附件的类型 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	 * @return 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	 * @throws IOException 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	 * @throws NoSuchAlgorithmException 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	 * @throws KeyManagementException 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	 * @throws KeyStoreException 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	 */ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	public static String postForHttps(String url, Map<String, Object> parameterMap, Map<String, String> headers, Map<String, File> fileMap, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+			ContentType contentType) throws IOException, NoSuchAlgorithmException, KeyManagementException, KeyStoreException { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		String result = null; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		CloseableHttpClient httpClient = HttpClients.createDefault(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		HttpPost httpPost = new HttpPost(url); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		if (headers != null && headers.size() > 0) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+			for (Entry<String, String> entry : headers.entrySet()) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+				httpPost.setHeader(entry.getKey(), entry.getValue()); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+			} 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		} 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		MultipartEntityBuilder builder = MultipartEntityBuilder.create(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		try { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+			if (parameterMap != null) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+				for (Entry<String, Object> entry : parameterMap.entrySet()) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+					String name = entry.getKey(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+					String value = ConvertUtils.convert(entry.getValue()); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+					if (StringUtils.isNotBlank(name) && StringUtils.isNotBlank(value)) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+						builder.addTextBody(name, value, ContentType.create("text/plain", Charset.forName("UTF-8"))); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+					} 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+				} 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+			} 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+			File file = null; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+			if (fileMap != null && fileMap.size() > 0) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+				for (Entry<String, File> entry : fileMap.entrySet()) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+					file = entry.getValue(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+					if (file != null) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+						builder.addBinaryBody(entry.getKey(), file, contentType, file.getName()); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+					} 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+				} 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+			} 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+			httpPost.setEntity(builder.build()); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+			HttpResponse httpResponse = httpClient.execute(httpPost); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+			HttpEntity httpEntity = httpResponse.getEntity(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+			result = EntityUtils.toString(httpEntity, "UTF-8"); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+			EntityUtils.consume(httpEntity); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		} finally { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+			httpPost.releaseConnection(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+			httpClient.close(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		} 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		return result; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	} 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	/** 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	 * GET请求 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	 *  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	 * @param url 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	 *            URL 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	 * @param parameterMap 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	 *            请求参数 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	 * @return 返回结果 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	 * @throws IOException  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	 */ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	public static String get(String url, Map<String, Object> parameterMap) throws IOException { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		return get(url, parameterMap, null); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	} 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	/** 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	 * GET请求 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	 *  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	 * @param url 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	 *            URL 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	 * @param parameterMap 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	 *            请求参数 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	 * @param headers 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	 *            请求头 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	 * @return 返回结果 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	 * @throws IOException  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	 */ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	public static String get(String url, Map<String, Object> parameterMap, Map<String, String> headers) throws IOException { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		String result = null; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		CloseableHttpClient httpClient = HttpClients.createDefault(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		HttpGet httpGet = null; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		try { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+			List<NameValuePair> nameValuePairs = new ArrayList<NameValuePair>(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+			if (parameterMap != null) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+				for (Entry<String, Object> entry : parameterMap.entrySet()) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+					String name = entry.getKey(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+					String value = ConvertUtils.convert(entry.getValue()); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+					if (StringUtils.isNotEmpty(name)) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+						nameValuePairs.add(new BasicNameValuePair(name, value)); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+					} 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+				} 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+			} 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+			httpGet = new HttpGet(url + (StringUtils.contains(url, "?") ? "&" : "?") + EntityUtils.toString(new UrlEncodedFormEntity(nameValuePairs, "UTF-8"))); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+			if (headers != null && headers.size() > 0) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+				for (Entry<String, String> entry : headers.entrySet()) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+					httpGet.setHeader(entry.getKey(), entry.getValue()); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+				} 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+			} 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+			HttpResponse httpResponse = httpClient.execute(httpGet); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+			HttpEntity httpEntity = httpResponse.getEntity(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+			result = EntityUtils.toString(httpEntity, "UTF-8"); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+			EntityUtils.consume(httpEntity); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		} finally { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+			if (httpGet != null) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+				httpGet.releaseConnection(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+			} 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+			httpClient.close(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		} 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		return result; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	} 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	/** 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	 * POST请求https url 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	 *  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	 * @param url 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	 *            URL 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	 * @param parameterMap 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	 *            请求参数 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	 * @return 返回结果 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	 * @throws IOException  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	 * @throws NoSuchAlgorithmException  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	 * @throws KeyManagementException  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	 * @throws KeyStoreException  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	 */ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	public static boolean downLoadPostForHttps(String url, Map<String, String> headerMap, Map<String, Object> parameterMap, String filePath) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+			throws IOException, NoSuchAlgorithmException, KeyManagementException, KeyStoreException { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		CloseableHttpClient httpClient = HttpClients.createDefault(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		HttpPost httpPost = new HttpPost(url); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		if (headerMap != null) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+			for (Entry<String, String> entry : headerMap.entrySet()) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+				httpPost.addHeader(entry.getKey(), entry.getValue()); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+			} 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		} 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		try { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+			List<NameValuePair> nameValuePairs = new ArrayList<NameValuePair>(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+			if (parameterMap != null) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+				for (Entry<String, Object> entry : parameterMap.entrySet()) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+					String name = entry.getKey(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+					String value = ConvertUtils.convert(entry.getValue()); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+					if (StringUtils.isNotEmpty(name)) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+						nameValuePairs.add(new BasicNameValuePair(name, value)); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+					} 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+				} 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+			} 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+			httpPost.setEntity(new UrlEncodedFormEntity(nameValuePairs, "UTF-8")); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+			HttpResponse httpResponse = httpClient.execute(httpPost); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+			HttpEntity httpEntity = httpResponse.getEntity(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+			InputStream is = httpEntity.getContent(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+			File file = new File(filePath); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+			file.getParentFile().mkdirs(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+			FileOutputStream fileout = new FileOutputStream(file); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+			IOUtils.copy(is, fileout); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+			is.close(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+			fileout.flush(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+			fileout.close(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+			EntityUtils.consume(httpEntity); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		} finally { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+			httpPost.releaseConnection(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+			httpClient.close(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		} 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		return true; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	} 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	/** 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	 * POST请求https url 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	 *  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	 * @param url 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	 *            URL 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	 * @param parameterMap 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	 *            请求参数 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	 * @return 返回结果 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	 * @throws IOException  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	 * @throws NoSuchAlgorithmException  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	 * @throws KeyManagementException  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	 * @throws KeyStoreException  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	 */ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	public static boolean downLoadZipGetForHttps(String url, Map<String, String> headerMap, Map<String, Object> parameterMap, String filePath) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+			throws IOException, NoSuchAlgorithmException, KeyManagementException, KeyStoreException { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		CloseableHttpClient httpClient = HttpClients.createDefault(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		HttpGet httpGet = null; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		try { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+			List<NameValuePair> nameValuePairs = new ArrayList<NameValuePair>(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+			if (parameterMap != null) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+				for (Entry<String, Object> entry : parameterMap.entrySet()) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+					String name = entry.getKey(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+					String value = ConvertUtils.convert(entry.getValue()); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+					if (StringUtils.isNotEmpty(name)) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+						nameValuePairs.add(new BasicNameValuePair(name, value)); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+					} 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+				} 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+			} 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+			httpGet = new HttpGet(url + (StringUtils.contains(url, "?") ? "&" : "?") + EntityUtils.toString(new UrlEncodedFormEntity(nameValuePairs, "UTF-8"))); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+			if (headerMap != null) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+				for (Entry<String, String> entry : headerMap.entrySet()) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+					httpGet.addHeader(entry.getKey(), entry.getValue()); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+				} 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+			} 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+			HttpResponse httpResponse = httpClient.execute(httpGet); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+			HttpEntity httpEntity = httpResponse.getEntity(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+			InputStream is = httpEntity.getContent(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+			File file = new File(filePath); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+			file.getParentFile().mkdirs(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+			List<File> files = ZipUtil.unCompressZipFile(is, file.getParent()); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+			List<String> listFile = new ArrayList<String>(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+			for (File f : files) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+				listFile.add(f.getPath()); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+			} 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+			ZipUtil zipUtil = ZipUtil.getInstance(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+			zipUtil.zipMultiFile(listFile.toArray(new String[listFile.size()]), filePath); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+			EntityUtils.consume(httpEntity); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+			for (File f : files) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+				FileUtils.deleteQuietly(f); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+			} 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		} finally { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+			if (httpGet != null) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+				httpGet.releaseConnection(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+			} 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+			httpClient.close(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		} 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		return true; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	} 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+} 
			 |