/** * * @param urlStr * url * @param content * 提交的参数 * @param encoding * 编码格式 * @return */ public static String getUrlResult(String urlStr, Map<String,Object> map,String method) { URL url = null; HttpURLConnection connection = null; try { url = new URL(urlStr); connection = (HttpURLConnection) url.openConnection();// 新建连接实例 connection.setConnectTimeout(10000);// 设置连接超时时间,单位毫秒 connection.setReadTimeout(10000);// 设置读取数据超时时间,单位毫秒 connection.setDoOutput(true);// 是否打开输出流 true|false connection.setDoInput(true);// 是否打开输入流true|false connection.setRequestMethod(method);// 提交方法POST|GET connection.setUseCaches(false);// 是否缓存true|false connection.connect();// 打开连接端口 DataOutputStream out = new DataOutputStream( connection.getOutputStream());// 打开输出流往对端服务器写数据 String content=buildUrlQuery(map); out.writeBytes(content);// 写数据,也就是提交你的表单 name=xxx&pwd=xxx out.flush();// 刷新 out.close();// 关闭输出流 BufferedReader reader = new BufferedReader(new InputStreamReader( connection.getInputStream(), "UTF-8"));// 往对端写完数据对端服务器返回数据 // ,以BufferedReader流来读取 StringBuffer buffer = new StringBuffer(); String line = ""; while ((line = reader.readLine()) != null) { buffer.append(line); } reader.close(); return buffer.toString(); } catch (IOException e) { e.printStackTrace(); } finally { if (connection != null) { connection.disconnect();// 关闭连接 } } return ""; } private static String buildUrlQuery(Map<String, Object> querys) throws UnsupportedEncodingException { StringBuilder sbQuery = new StringBuilder(); if (null != querys) { for (Map.Entry<String, Object> query : querys.entrySet()) { if (0 < sbQuery.length()) { sbQuery.append("&"); } if (String.valueOf((query.getKey())).equals("null") && !String.valueOf((query.getValue().toString())).equals("null")) { sbQuery.append(query.getValue()); } if (!String.valueOf((query.getKey())).equals("null")) { sbQuery.append(query.getKey()); if (!String.valueOf(query.getValue()).equals("null")) { sbQuery.append("="); sbQuery.append(URLEncoder.encode(query.getValue().toString(), "utf-8")); } } } } return sbQuery.toString(); }