java 后台Post提交

来源:互联网 发布:淘宝店铺自动回复 编辑:程序博客网 时间:2024/06/10 04:35
private static final String SERVLET_GET = "GET";
private static final String SERVLET_POST = "POST";/** * post请求 *  * @param urlStr *            请求地址 * @param paramMap *            请求所需的参数 * @return json格式的串 * @throws Exception */public static String doPost(String urlStr, Map<String, Object> paramMap)throws Exception {<span style="white-space:pre"></span>URL url = new URL(urlStr);HttpURLConnection conn = (HttpURLConnection) url.openConnection();<span style="white-space:pre"></span>conn.setRequestMethod(SERVLET_POST);<span style="white-space:pre"></span>String paramStr = prepareParam(paramMap);<span style="white-space:pre"></span>conn.setDoInput(true);conn.setDoOutput(true);OutputStream os = conn.getOutputStream();os.write(paramStr.toString().getBytes("utf-8"));os.close();BufferedReader br = new BufferedReader(new InputStreamReader(conn.getInputStream(),"UTF-8"));String line;urlStr = "";while ((line = br.readLine()) != null) {urlStr += line;}br.close();System.out.println(urlStr);return urlStr;}private static String prepareParam(Map<String, Object> paramMap) {StringBuffer sb = new StringBuffer();if (paramMap.isEmpty()) {return "";} else {for (String key : paramMap.keySet()) {String value = (String) paramMap.get(key);if (sb.length() < 1) {sb.append(key).append("=").append(value);} else {sb.append("&").append(key).append("=").append(value);}}return sb.toString();}}


0 0