Java simuliert den gleichzeitigen Zugriff
Dec 20, 2016 pm 01:35 PM
java
Klasse:NetUtils.java
import java.io.DataInputStream; import java.io.DataOutputStream; import java.net.HttpURLConnection; import java.net.URL; import java.util.Map; import java.util.Properties; public class NetUtils { public static final String CHARACTER_ENCODING = "UTF-8"; public static final String PATH_SIGN = "/"; public static final String METHOD_POST = "POST"; public static final String METHOD_GET = "GET"; public static final String CONTENT_TYPE = "Content-Type"; /** * 以POST方式向指定地址发送数据包请求,并取得返回的数据包 * * @param urlString * @param requestData * @return 返回数据包 * @throws Exception */ public static byte[] requestPost(String urlString, byte[] requestData) throws Exception { Properties requestProperties = new Properties(); requestProperties.setProperty(CONTENT_TYPE, "application/octet-stream; charset=utf-8"); return requestPost(urlString, requestData, requestProperties); } /** * 以POST方式向指定地址发送数据包请求,并取得返回的数据包 * * @param urlString * @param requestData * @param requestProperties * @return 返回数据包 * @throws Exception */ public static byte[] requestPost(String urlString, byte[] requestData, Properties requestProperties) throws Exception { byte[] responseData = null; HttpURLConnection con = null; try { URL url = new URL(urlString); con = (HttpURLConnection) url.openConnection(); //设置请求属性 if ((requestProperties != null) && (requestProperties.size() > 0)) { for (Map.Entry<Object, Object> entry : requestProperties.entrySet()) { String key = String.valueOf(entry.getKey()); String value = String.valueOf(entry.getValue()); con.setRequestProperty(key, value); } } con.setRequestMethod(METHOD_POST); // 置为POST方法 con.setDoInput(true); // 开启输入流 con.setDoOutput(true); // 开启输出流 // 如果请求数据不为空,输出该数据。 if (requestData != null) { DataOutputStream dos = new DataOutputStream(con.getOutputStream()); dos.write(requestData); dos.flush(); dos.close(); } int length = con.getContentLength(); // 如果回复消息长度不为-1,读取该消息。 if (length != -1) { DataInputStream dis = new DataInputStream(con.getInputStream()); responseData = new byte[length]; dis.readFully(responseData); dis.close(); } } catch (Exception e) { throw e; } finally { if (con != null) { con.disconnect(); con = null; } } return responseData; } }
Nach dem Login kopieren
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn

Heißer Artikel
Repo: Wie man Teamkollegen wiederbelebt
3 Wochen vor
By 尊渡假赌尊渡假赌尊渡假赌
Wie lange dauert es, um Split Fiction zu schlagen?
3 Wochen vor
By DDD
R.E.P.O. Energiekristalle erklärten und was sie tun (gelber Kristall)
1 Wochen vor
By 尊渡假赌尊渡假赌尊渡假赌
Hello Kitty Island Abenteuer: Wie man riesige Samen bekommt
3 Wochen vor
By 尊渡假赌尊渡假赌尊渡假赌

Hot-Tools-Tags

Heißer Artikel
Repo: Wie man Teamkollegen wiederbelebt
3 Wochen vor
By 尊渡假赌尊渡假赌尊渡假赌
Wie lange dauert es, um Split Fiction zu schlagen?
3 Wochen vor
By DDD
R.E.P.O. Energiekristalle erklärten und was sie tun (gelber Kristall)
1 Wochen vor
By 尊渡假赌尊渡假赌尊渡假赌
Hello Kitty Island Abenteuer: Wie man riesige Samen bekommt
3 Wochen vor
By 尊渡假赌尊渡假赌尊渡假赌

Heiße Artikel -Tags

Notepad++7.3.1
Einfach zu bedienender und kostenloser Code-Editor

SublimeText3 chinesische Version
Chinesische Version, sehr einfach zu bedienen

Senden Sie Studio 13.0.1
Leistungsstarke integrierte PHP-Entwicklungsumgebung

Dreamweaver CS6
Visuelle Webentwicklungstools

SublimeText3 Mac-Version
Codebearbeitungssoftware auf Gottesniveau (SublimeText3)

Heiße Themen

Brechen oder aus Java 8 Stream foreach zurückkehren?
