首页 > 代码库 > httpclient下载文件

httpclient下载文件

在pom.xml中引入httpclientjar包:

    <!--httpclient 联网的数据传输 -->
        <dependency>
            <groupId>org.apache.httpcomponents</groupId>
            <artifactId>httpclient</artifactId>
            <version>4.5.2</version>
        </dependency>
        <dependency>
            <groupId>org.apache.httpcomponents</groupId>
            <artifactId>httpcore</artifactId>
            <version>4.4.6</version>
        </dependency>
        <!-- dom4j用來讀取XML文件的-->
        <dependency>
            <groupId>org.jvnet.hudson.dom4j</groupId>
            <artifactId>dom4j</artifactId>
            <version>1.6.1-hudson-3</version>
        </dependency>

写java类代码:

    private void executeGetMethod(int pageIndex, int pageSize) {
        // 1、创建HttpClient 对象
        CloseableHttpClient client = HttpClients.createDefault();
        // 2、创建一个Get请求
        HttpGet httpGet = new HttpGet(
                "http://wcf.open.cnblogs.com/blog/sitehome/paged/" + pageIndex+ "/" + pageSize);
        CloseableHttpResponse response = null;
        try {
            // 3、执行操作,并且得到响应的 输出流
            response = client.execute(httpGet);
            // 4、得到响应流             中的 数据对象
            HttpEntity entity = response.getEntity();
            // 5、打印出响应码 200 , 404 ,500, 403(非必要)
            System.out.println(response.getStatusLine().getStatusCode());
            // 6、判断entity是不是为null
            if (entity != null) {
                // 开始读取xml的数据,使用dom4j
                //readXML(entity.getContent());其中entity.getContent()得到的是一个输入流,对文件进行解读
            }
        } catch (IOException e) {
            e.printStackTrace();
        } finally {
            // 关闭响应流,关闭连接
            try {
                if (response != null) {
                    response.close();
                }
                if (client != null) {
                    client.close();
                }
            } catch (Exception e2) {
                e2.printStackTrace();
            }
        }
    }

 

httpclient下载文件