HttpClient工具类

1. HttpClient工具类:

    (1) 地址: taotao-common中HttpClientUtil.java

    (2)方法:

        doGet(String url, Map<String, String> param);

       doGet(String url);

      doPost(String url, Map<String, String> param);

      doPost(String url);

      doPostJson(String url, String json);

 

   (3) 使用场景: 用来模拟浏览器的get和post请求

   (5)使用例子: (地址com.taotao.portal.service.impl 中的 search(String queryString, int page))

  请求端:

public SearchResult search(String queryString, int page) {
		// 调用taotao-search的服务
		// 查询参数
		Map<String, String> param = new HashMap<>();
		param.put("q", queryString);
		param.put("page", page + "");
		try {
			// 调用服务
			String json = HttpClientUtil.doGet(SEARCH_BASE_URL, param);
			// 把字符串转换成java对象
			TaotaoResult taotaoResult = TaotaoResult.formatToPojo(json, SearchResult.class);
			if (taotaoResult.getStatus() == 200) {
				SearchResult result = (SearchResult) taotaoResult.getData();
				return result;
			}

		} catch (Exception e) {
			e.printStackTrace();
		}
		return null;
	}

        接收端: com.taotao.search.controller

/**
 * 商品查询Controller
 * @author Administrator
 *
 */
@Controller
public class SearchController {
	
	@Resource
	private SearchService searchServiceImpl;
	
	@RequestMapping(value="/query",method=RequestMethod.GET)
	@ResponseBody
	public TaotaoResult search(@RequestParam("q")String queryString, 
			@RequestParam(defaultValue="1")Integer page, 
			@RequestParam(defaultValue="60")Integer rows) {
		//查询条件不能为空
		if (StringUtils.isBlank(queryString)) {
			return TaotaoResult.build(400, "查询条件不能为空");
		}
		SearchResult searchResult = null;
		try {
			queryString = new String(queryString.getBytes("iso8859-1"), "utf-8");
			searchResult = searchServiceImpl.search(queryString, page, rows);
		} catch (Exception e) {
			e.printStackTrace();
			return TaotaoResult.build(500, ExceptionUtil.getStackTrace(e));
		}
		return TaotaoResult.ok(searchResult);
		
	}
}

 

转载于:https://my.oschina.net/u/3631797/blog/1788468

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值