Java-请求资源接口(REST API)的工具类(HttpUtil)

本文介绍了一个Java工具类HttpUtil,用于发起HTTP GET请求,获取资源接口的String类型响应内容。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

请求资源接口的工具类

用处: 向一个资源链接发起请求(这里暂时只有GET),返回String类型的响应体。

import cn.stylefeng.roses.kernel.model.exception.ServiceException;
import cn.yrcti.sup.core.common.exception.BizExceptionEnum;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;

import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
import java.io.OutputStreamWriter;
import java.net.HttpURLConnection;
import java.net.MalformedURLException;
import java.net.URL;
import java.util.List;
import java.util.Map;

/**
 * 请求资源接口
 */
public class HttpUtil {
    private static final Logger logger = LoggerFactory.getLogger(HttpUtil.class);

    /**
     * 向指定URL发起Get请求,参数为params
     * @param url
     * @param params
     * @return
     */
    public static String sendGet(String url, Map<String,String> params) throws Exception,IOException
    {
        StringBuffer result = new StringBuffer();//
### 使用高德地图API进行路径规划的Java实现 #### 准备工作 为了能够顺利调用高德地图API,在项目启动前需完成必要的准备工作。这包括但不限于注册成为开发者并申请相应的API Key,以及确保网络环境允许访问外部接口服务。 #### 构建HTTP请求发送工具类 构建一个用于发起HTTP GET/POST 请求的基础工具类,以便后续操作中可以直接通过此工具向指定URL传递参数并接收响应数据。通常情况下会采用HttpClient库来简化这一过程[^1]。 ```java 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; import org.apache.http.util.EntityUtils; public class HttpUtil { public static String doGet(String url){ CloseableHttpClient httpClient = null; CloseableHttpResponse response = null; try{ httpClient = HttpClients.createDefault(); HttpGet httpGet = new HttpGet(url); response = httpClient.execute(httpGet); if(response.getStatusLine().getStatusCode()==200){ return EntityUtils.toString(response.getEntity(),"UTF-8"); } }catch(Exception e){ e.printStackTrace(); }finally{ try{ if(null != response)response.close(); if(null != httpClient)httpClient.close(); }catch(IOException e){ e.printStackTrace(); } } return ""; } } ``` #### 编写路径规划业务逻辑代码 基于上述准备好的HttpUtil工具类,现在可以开始编写具体的路径规划功能实现了。下面是一个简单的例子,展示了如何使用Java程序调用高德地图API来进行两点之间的驾车导航计算: ```java public class RoutePlanning { private final static String KEY = "your_api_key"; // 替换成自己的key /** * 获取两个地点间最短距离的驾驶路线方案 */ public void getDrivingRoute(String origin, String destination){ StringBuilder sbUrl=new StringBuilder("https://restapi.amap.com/v3/direction/driving?"); sbUrl.append("origin=").append(origin); //起点经度,纬度;例如:116.481499,39.990475 sbUrl.append("&destination=").append(destination); //终点经度,纬度; sbUrl.append("&key=").append(KEY); String result=HttpUtil.doGet(sbUrl.toString()); System.out.println(result); } } ``` 以上就是完整的高德地图API路径规划Java端实现流程说明及示例代码展示。需要注意的是实际应用场景下还需要考虑异常处理机制、多线程并发控制等问题以提高系统的稳定性和性能表现。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值