java使用URL类访问网络资源

    http作为一个网络协议可以说是现在 Internet 上使用得最多、最重要的协议了,对我们这些做程序开发的人员来说也是老朋友了。这次我要介绍的HttpClient想必大家即便是没有使用过,也肯定听过他的名字。我们知道不同的系统之间交互数据的方式有很多,例如:mq、webservice、rpc远程调用、rmi、甚至包括js的跨域访问等,而httpclient作为访问网络资源的一个工具包,也越来越多的在数据交互领域凸显出自己独有的特色。httpclient 是 Apache Jakarta Common 下的子项目,可以用来提供高效、功能丰富的访问网络资源的方式,也用作不同系统之间的数据交互。httpclient既然是个工具包,也就是说它只是封装了一些jdk里面原生的功能,从另外一个角度讲,我们使用jdk原生的方式依然可以完成httpclient所能完成的功能,httpclient只不过是在原生的jdk提供的网络访问的基础上进行封装、加强了之后,从而形成的一个工具包罢了。不管是哪种框架,框架的功能肯定没有原生的强,但是它更便捷,所以更通用。

下面是一个使用jdk再带的URL类访问网络资源的一种方式:

	@Test
	public void test0() throws Exception{
		URL url=new URL("http://www.roadjava.com");
		InputStream is = url.openStream();
		String cont="";
		byte[] bytes=new byte[1024];
		int len=0;
		while((len=is.read(bytes))!=-1){
			cont+=new String(bytes, 0, len, "utf-8");
		}
		System.out.println(cont);
	}

上面代码的含义就是获取网址http://www.roadjava.com的内容,并打印到控制台,我们来看下输出结果:

image.png

你可以访问任何的网址,当然该网址必须是有效的,那么你说到目前为止,我大概知道了httpclient可以访问某个网址并获取它的返回数据,哪些场景会用到呢?

这已经很直白了,比如:

  1. 在a系统需要调用b系统的某个方法b_f1()并获取这个方法的返回值,这个时候就可以使用httpclient通过网络路径来访问b_f1()方法(当然,前提是a系统与b系统网络能够联通,并能够互相访问)

  2. 在爬虫里面httpclient使用的更为广泛

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值