<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>

    athrunwang

    紀(jì)元
    數(shù)據(jù)加載中……
    [導(dǎo)入][轉(zhuǎn)載]java中用URLConnection 類post方式提交表單
    /**
     * <pre>
     * Title:         HttpRequestProxy.java
     * Project:     HP-Common
     * Type:        com.hengpeng.common.web.HttpRequestProxy
     * Author:        benl
     * Create:         2007-7-3 上午03:07:07
     * Copyright:     Copyright (c) 2007
     * Company:
     * <pre>
     */
    import java.io.BufferedReader;
    import java.io.IOException;
    import java.io.InputStream;
    import java.io.InputStreamReader;
    import java.net.HttpURLConnection;
    import java.net.URL;
    import java.net.URLEncoder;
    import java.util.HashMap;
    import java.util.Iterator;
    import java.util.Map;
    import java.util.Map.Entry;

    import org.apache.log4j.Logger;

    /**
     * <pre>
     * HTTP請求代理類
     * </pre>
     *
     * @author benl
     * @version 1.0, 2007-7-3
     */
    public class HttpRequestProxy
    {
        /**
         * 連接超時
         */
        private static int connectTimeOut = 5000;

        /**
         * 讀取數(shù)據(jù)超時
         */
        private static int readTimeOut = 10000;

        /**
         * 請求編碼
         */
        private static String requestEncoding = "GBK";

        private static Logger logger = Logger.getLogger(HttpRequestProxy.class);

        /**
         * <pre>
         * 發(fā)送帶參數(shù)的GET的HTTP請求
         * </pre>
         *
         * @param reqUrl HTTP請求URL
         * @param parameters 參數(shù)映射表
         * @return HTTP響應(yīng)的字符串
         */
        public static String doGet(String reqUrl, Map parameters,
                String recvEncoding)
        {
            HttpURLConnection url_con = null;
            String responseContent = null;
            try
            {
                StringBuffer params = new StringBuffer();
                for (Iterator iter = parameters.entrySet().iterator(); iter
                        .hasNext();)
                {
                    Entry element = (Entry) iter.next();
                    params.append(element.getKey().toString());
                    params.append("=");
                    params.append(URLEncoder.encode(element.getValue().toString(),
                            HttpRequestProxy.requestEncoding));
                    params.append("&");
                }

                if (params.length() > 0)
                {
                    params = params.deleteCharAt(params.length() - 1);
                }

                URL url = new URL(reqUrl);
                url_con = (HttpURLConnection) url.openConnection();
                url_con.setRequestMethod("GET");
                System.setProperty("sun.net.client.defaultConnectTimeout", String
                        .valueOf(HttpRequestProxy.connectTimeOut));// (單位:毫秒)jdk1.4換成這個,連接超時
                System.setProperty("sun.net.client.defaultReadTimeout", String
                        .valueOf(HttpRequestProxy.readTimeOut)); // (單位:毫秒)jdk1.4換成這個,讀操作超時
                // url_con.setConnectTimeout(5000);//(單位:毫秒)jdk
                // 1.5換成這個,連接超時
                // url_con.setReadTimeout(5000);//(單位:毫秒)jdk 1.5換成這個,讀操作超時
                url_con.setDoOutput(true);
                byte[] b = params.toString().getBytes();
                url_con.getOutputStream().write(b, 0, b.length);
                url_con.getOutputStream().flush();
                url_con.getOutputStream().close();

                InputStream in = url_con.getInputStream();
                BufferedReader rd = new BufferedReader(new InputStreamReader(in,
                        recvEncoding));
                String tempLine = rd.readLine();
                StringBuffer temp = new StringBuffer();
                String crlf=System.getProperty("line.separator");
                while (tempLine != null)
                {
                    temp.append(tempLine);
                    temp.append(crlf);
                    tempLine = rd.readLine();
                }
                responseContent = temp.toString();
                rd.close();
                in.close();
            }
            catch (IOException e)
            {
                logger.error("網(wǎng)絡(luò)故障", e);
            }
            finally
            {
                if (url_con != null)
                {
                    url_con.disconnect();
                }
            }

            return responseContent;
        }

        /**
         * <pre>
         * 發(fā)送不帶參數(shù)的GET的HTTP請求
         * </pre>
         *
         * @param reqUrl HTTP請求URL
         * @return HTTP響應(yīng)的字符串
         */
        public static String doGet(String reqUrl, String recvEncoding)
        {
            HttpURLConnection url_con = null;
            String responseContent = null;
            try
            {
                StringBuffer params = new StringBuffer();
                String queryUrl = reqUrl;
                int paramIndex = reqUrl.indexOf("?");

                if (paramIndex > 0)
                {
                    queryUrl = reqUrl.substring(0, paramIndex);
                    String parameters = reqUrl.substring(paramIndex + 1, reqUrl
                            .length());
                    String[] paramArray = parameters.split("&");
                    for (int i = 0; i < paramArray.length; i++)
                    {
                        String string = paramArray[i];
                        int index = string.indexOf("=");
                        if (index > 0)
                        {
                            String parameter = string.substring(0, index);
                            String value = string.substring(index + 1, string
                                    .length());
                            params.append(parameter);
                            params.append("=");
                            params.append(URLEncoder.encode(value,
                                    HttpRequestProxy.requestEncoding));
                            params.append("&");
                        }
                    }

                    params = params.deleteCharAt(params.length() - 1);
                }

                URL url = new URL(queryUrl);
                url_con = (HttpURLConnection) url.openConnection();
                url_con.setRequestMethod("GET");
                System.setProperty("sun.net.client.defaultConnectTimeout", String
                        .valueOf(HttpRequestProxy.connectTimeOut));// (單位:毫秒)jdk1.4換成這個,連接超時
                System.setProperty("sun.net.client.defaultReadTimeout", String
                        .valueOf(HttpRequestProxy.readTimeOut)); // (單位:毫秒)jdk1.4換成這個,讀操作超時
                // url_con.setConnectTimeout(5000);//(單位:毫秒)jdk
                // 1.5換成這個,連接超時
                // url_con.setReadTimeout(5000);//(單位:毫秒)jdk 1.5換成這個,讀操作超時
                url_con.setDoOutput(true);
                byte[] b = params.toString().getBytes();
                url_con.getOutputStream().write(b, 0, b.length);
                url_con.getOutputStream().flush();
                url_con.getOutputStream().close();
                InputStream in = url_con.getInputStream();
                BufferedReader rd = new BufferedReader(new InputStreamReader(in,
                        recvEncoding));
                String tempLine = rd.readLine();
                StringBuffer temp = new StringBuffer();
                String crlf=System.getProperty("line.separator");
                while (tempLine != null)
                {
                    temp.append(tempLine);
                    temp.append(crlf);
                    tempLine = rd.readLine();
                }
                responseContent = temp.toString();
                rd.close();
                in.close();
            }
            catch (IOException e)
            {
                logger.error("網(wǎng)絡(luò)故障", e);
            }
            finally
            {
                if (url_con != null)
                {
                    url_con.disconnect();
                }
            }

            return responseContent;
        }

        /**
         * <pre>
         * 發(fā)送帶參數(shù)的POST的HTTP請求
         * </pre>
         *
         * @param reqUrl HTTP請求URL
         * @param parameters 參數(shù)映射表
         * @return HTTP響應(yīng)的字符串
         */
        public static String doPost(String reqUrl, Map parameters,
                String recvEncoding)
        {
            HttpURLConnection url_con = null;
            String responseContent = null;
            try
            {
                StringBuffer params = new StringBuffer();
                for (Iterator iter = parameters.entrySet().iterator(); iter
                        .hasNext();)
                {
                    Entry element = (Entry) iter.next();
                    params.append(element.getKey().toString());
                    params.append("=");
                    params.append(URLEncoder.encode(element.getValue().toString(),
                            HttpRequestProxy.requestEncoding));
                    params.append("&");
                }

                if (params.length() > 0)
                {
                    params = params.deleteCharAt(params.length() - 1);
                }

                URL url = new URL(reqUrl);
                url_con = (HttpURLConnection) url.openConnection();
                url_con.setRequestMethod("POST");
                System.setProperty("sun.net.client.defaultConnectTimeout", String
                        .valueOf(HttpRequestProxy.connectTimeOut));// (單位:毫秒)jdk1.4換成這個,連接超時
                System.setProperty("sun.net.client.defaultReadTimeout", String
                        .valueOf(HttpRequestProxy.readTimeOut)); // (單位:毫秒)jdk1.4換成這個,讀操作超時
                // url_con.setConnectTimeout(5000);//(單位:毫秒)jdk
                // 1.5換成這個,連接超時
                // url_con.setReadTimeout(5000);//(單位:毫秒)jdk 1.5換成這個,讀操作超時
                url_con.setDoOutput(true);
                byte[] b = params.toString().getBytes();
                url_con.getOutputStream().write(b, 0, b.length);
                url_con.getOutputStream().flush();
                url_con.getOutputStream().close();

                InputStream in = url_con.getInputStream();
                BufferedReader rd = new BufferedReader(new InputStreamReader(in,
                        recvEncoding));
                String tempLine = rd.readLine();
                StringBuffer tempStr = new StringBuffer();
                String crlf=System.getProperty("line.separator");
                while (tempLine != null)
                {
                    tempStr.append(tempLine);
                    tempStr.append(crlf);
                    tempLine = rd.readLine();
                }
                responseContent = tempStr.toString();
                rd.close();
                in.close();
            }
            catch (IOException e)
            {
                logger.error("網(wǎng)絡(luò)故障", e);
            }
            finally
            {
                if (url_con != null)
                {
                    url_con.disconnect();
                }
            }
            return responseContent;
        }

        /**
         * @return 連接超時(毫秒)
         * @see com.hengpeng.common.web.HttpRequestProxy#connectTimeOut
         */
        public static int getConnectTimeOut()
        {
            return HttpRequestProxy.connectTimeOut;
        }

        /**
         * @return 讀取數(shù)據(jù)超時(毫秒)
         * @see com.hengpeng.common.web.HttpRequestProxy#readTimeOut
         */
        public static int getReadTimeOut()
        {
            return HttpRequestProxy.readTimeOut;
        }

        /**
         * @return 請求編碼
         * @see com.hengpeng.common.web.HttpRequestProxy#requestEncoding
         */
        public static String getRequestEncoding()
        {
            return requestEncoding;
        }

        /**
         * @param connectTimeOut 連接超時(毫秒)
         * @see com.hengpeng.common.web.HttpRequestProxy#connectTimeOut
         */
        public static void setConnectTimeOut(int connectTimeOut)
        {
            HttpRequestProxy.connectTimeOut = connectTimeOut;
        }

        /**
         * @param readTimeOut 讀取數(shù)據(jù)超時(毫秒)
         * @see com.hengpeng.common.web.HttpRequestProxy#readTimeOut
         */
        public static void setReadTimeOut(int readTimeOut)
        {
            HttpRequestProxy.readTimeOut = readTimeOut;
        }

        /**
         * @param requestEncoding 請求編碼
         * @see com.hengpeng.common.web.HttpRequestProxy#requestEncoding
         */
        public static void setRequestEncoding(String requestEncoding)
        {
            HttpRequestProxy.requestEncoding = requestEncoding;
        }
       
        public static void main(String[] args)
        {
            Map map = new HashMap();
            map.put("actionType", "1");
    //        map.put("issueId", "33");
            String temp = HttpRequestProxy.doPost("http://192.168.0.99/AgentPortal/autoHandler", map, "GBK");
            System.out.println("返回的消息是:"+temp);
           
        }
    }

    文章來源:http://blog.163.com/ccbobo_cat/blog/static/320994622009616102329953

    posted on 2011-09-28 13:05 AthrunWang 閱讀(11184) 評論(0)  編輯  收藏


    只有注冊用戶登錄后才能發(fā)表評論。


    網(wǎng)站導(dǎo)航:
     
    主站蜘蛛池模板: a毛片免费播放全部完整| 日本亚洲成高清一区二区三区| 美女在线视频观看影院免费天天看 | 国产精品久久久久免费a∨| 中文字幕免费播放| 蜜芽亚洲av无码一区二区三区| 久久久久亚洲av无码专区导航| 国产av无码专区亚洲av果冻传媒 | 亚洲AV综合色区无码二区爱AV| 亚洲精品高清无码视频| 国产一级淫片视频免费看| 免费在线观看的网站| 无码日韩精品一区二区免费暖暖| 一级**爱片免费视频| 久久综合亚洲色hezyo| 久久亚洲精品国产亚洲老地址| 亚洲综合久久1区2区3区 | 无码人妻丰满熟妇区免费| jizz日本免费| 免费无码国产在线观国内自拍中文字幕| 亚洲六月丁香六月婷婷蜜芽| 亚洲精品91在线| 亚洲欧洲国产日韩精品| 伊人久久亚洲综合| 久久精品国产亚洲5555| 亚洲精品国产精品乱码不卞| 又色又污又黄无遮挡的免费视| 暖暖日本免费在线视频| 午夜时刻免费入口| 德国女人一级毛片免费| 毛片a级毛片免费观看免下载| 91视频国产免费| 国产在线a免费观看| 999国内精品永久免费视频| 亚洲免费一级视频| 成人免费一级毛片在线播放视频| 1000部拍拍拍18勿入免费视频下载 | 亚洲免费福利在线视频| 噼里啪啦免费观看高清动漫4| 四虎免费影院ww4164h| 免费无码AV片在线观看软件|