URL类的使用

来源:互联网 发布:淘宝卖家网页版登陆 编辑:程序博客网 时间:2024/05/21 15:19

URL类的常用方法

类 URL 代表一个统一资源定位符,它是指向互联网“资源”的指针。资源可以是简单的文件或目录,也可以是对更为复杂的对象的引用,例如对数据库或搜索引擎的查询。

        URL baidu = new URL("http://www.baidu.com");        //主机名?后面为参数信息,#锚点        URL url = new URL(baidu,"/index.html?username=tom#test");        System.out.println("协议:"+url.getProtocol());        System.out.println("主机名:"+url.getHost());        System.out.println("锚点:"+url.getRef());        System.out.println("查询信息:"+url.getQuery());

GET提交的使用方法

                URL url = new URL("http://www.weather.com.cn/data/cityinfo/101180501.html");                URLConnection conn = url.openConnection();                InputStream is = conn.getInputStream();//              InputStream is = url.openStream();//获取从该URL中读取的数据                InputStreamReader isr = new InputStreamReader(is,"utf-8");//字节流转换为字符流                BufferedReader br = new BufferedReader(isr);//为字符流添加缓冲区                String mess ;                StringBuilder sb = new StringBuilder();//每次读取的信息拼接到StringBuilder                while((mess=br.readLine())!=null){                    sb.append(mess);                }                System.out.println(sb.toString());//              FileWriter fw = new FileWriter("F:\\hzw.jpg");//              fw.write(sb.toString());                //关闭资源//              fw.close();                br.close();                isr.close();                is.close();

POST提交的使用方法

        URL url = new URL("http://fanyi.youdao.com/openapi.do");        HttpURLConnection conn = (HttpURLConnection) url.openConnection();//      System.out.println("请求方式:"+conn.getRequestMethod());//      System.out.println("状态码:"+conn.getResponseCode());//      System.out.println("相应消息:"+conn.getResponseMessage());        conn.setRequestProperty("encoding", "utf-8");//设置编码        conn.setDoInput(true);//打开输入流        conn.setDoOutput(true);//打开输出流        conn.setRequestMethod("POST");//设置访问方式        OutputStream os = conn.getOutputStream();        OutputStreamWriter osw = new OutputStreamWriter(os);        BufferedWriter bw = new BufferedWriter(osw);        bw.write("keyfrom=huosensen&key=1871355394&type=data&doctype=xml&version=1.1&q=welcome");        bw.flush();        InputStream is = conn.getInputStream();        InputStreamReader isr = new InputStreamReader(is,"utf-8");        BufferedReader br = new BufferedReader(isr);        String mess ;        StringBuilder sb = new StringBuilder();        while((mess=br.readLine())!=null){            sb.append(mess);        }        br.close();        isr.close();        is.close();        bw.close();        osw.close();        os.close();        System.out.println(sb.toString());

使用HttpClient实现GET提交

//获取HttpClient对象HttpClient client = HttpClients.createDefault();HttpGet get = new HttpGet("http://www.baidu.com");//通过execute()方法获得HttpResponse对象HttpResponse response = client.execute(get);HttpEntity entity = response.getEntity();String str = EntityUtils.toString(entity, "utf-8");System.out.println(str);

使用HttpClient实现POST提交

            HttpClient client = HttpClients.createDefault();            List<BasicNameValuePair> parameters = new ArrayList<>();            parameters.add(new BasicNameValuePair("keyfrom", "dayanjing"));            parameters.add(new BasicNameValuePair("key", "207268991"));            parameters.add(new BasicNameValuePair("type", "data"));            parameters.add(new BasicNameValuePair("doctype", "xml"));            parameters.add(new BasicNameValuePair("version", "1.1"));            parameters.add(new BasicNameValuePair("q", "welcome"));            post.setEntity(new UrlEncodedFormEntity(parameters, "UTF-8"));            HttpResponse response = client.execute(post);            HttpEntity entity = response.getEntity();            String result = EntityUtils.toString(entity, "utf-8");            System.out.println(result);

httpcomponents下载地址:http://apache.fayea.com//httpcomponents/httpclient/binary/httpcomponents-client-4.5.2-bin.zip

1 0
原创粉丝点击