集册 Java实例教程 使用API确保底层连接被释放回连接管理器apache http客户端

使用API确保底层连接被释放回连接管理器apache http客户端

欢马劈雪     最近更新时间:2020-01-02 10:19:05

555
使用API​​确保基础连接被释放回连接管理器apache http客户端
/*

 * --------------------------------------------------------------------

 * Licensed to the Apache Software Foundation (ASF) under one

 * or more contributor license agreements.  See the NOTICE file

 * distributed with this work for additional information

 * regarding copyright ownership.  The ASF licenses this file

 * to you under the Apache License, Version 2.0 (the

 * "License"); you may not use this file except in compliance

 * with the License.  You may obtain a copy of the License at

 *

 *   http://www.apache.org/licenses/LICENSE-2.0

 *

 * Unless required by applicable law or agreed to in writing,

 * software distributed under the License is distributed on an

 * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY

 * KIND, either express or implied.  See the License for the

 * specific language governing permissions and limitations

 * under the License.

 * --------------------------------------------------------------------

 *

 * This software consists of voluntary contributions made by many

 * individuals on behalf of the Apache Software Foundation.  For more

 * information on the Apache Software Foundation, please see

 * <http://www.apache.org/>.

 *

 */


package org.apache.http.examples.client;
/** from 时 代      J a v a   公   众 号 - nowjava.com**/

import java.io.IOException;

import java.io.InputStream;


import org.apache.http.HttpEntity;

import org.apache.http.client.methods.CloseableHttpResponse;

import org.apache.http.client.methods.HttpGet;

import org.apache.http.impl.client.CloseableHttpClient;

import org.apache.http.impl.client.HttpClients;


/**

 * This example demonstrates the recommended way of using API to make sure

 * the underlying connection gets released back to the connection manager.

 */

public class ClientConnectionRelease {


    public final static void main(String[] args) throws Exception {

        CloseableHttpClient httpclient = HttpClients.createDefault();// 来 自 时代Java公众号 - N o w J a  v a . c o m

        try {

            HttpGet httpget = new HttpGet("http://localhost/");


            System.out.println("Executing request "

                    + httpget.getRequestLine());

            CloseableHttpResponse response = httpclient.execute(httpget);

            try {

                System.out

                        .println("----------------------------------------");

                System.out.println(response.getStatusLine());


                // Get hold of the response entity

                HttpEntity entity = response.getEntity();


                // If the response does not enclose an entity, there is no need

                // to bother about connection release

                if (entity != null) {

                    InputStream instream = entity.getContent();

                    try {

                        instream.read();

                        // do something useful with the response

                    } catch (IOException ex) {

                        
展开阅读全文