zoukankan      html  css  js  c++  java
  • java请求url可以带参数

    /**
         * 
         * @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();
        }
  • 相关阅读:
    IbatisNet 快速开发使用 之一
    C#开发和调用Web Service
    如何构建银行数据仓库
    SQLSREVER如何创建和使用动态游标
    一个sql语句,包含有几乎所有标准查询语法
    深入研究SQL结构化查询语言中的LIKE语句
    数据库正规化和设计技巧
    黑客攻破SQL服务器系统的十种方法
    实用的存储过程
    数据库人员手边系列:SQL Server常见连接错误
  • 原文地址:https://www.cnblogs.com/syscn/p/7741903.html
Copyright © 2011-2022 走看看