java网络通信(一)使用http的get方法进行网络通信

下面使用一个小demo来演示如何进行网络通信。

首先,在intelij环境下新建一个工程,我们把它命名为TestHttpGet,在里面新建一个名为test的java类。然后开启一个线程,如下:

public class Test{
    public static void main(String[] args) {
        run run=new run();
        run.start();
    }
    static class run extends Thread{
        @Override
        public void run(){
         }
}
接着我们使用有道词典给予的API来进行演示。

进入有道词典额度官网,然后进行API申请,填入相关信息之后可以得到一个链接。每个人的链接都不同,而我的链接如下

http://fanyi.youdao.com/openapi.do?keyfrom=httpGetTest090807&key=917336328&type=data&doctype=json&version=1.1&q=welcome

之后,我们来分析一下这个地址。

keyfromkey都是我们申请API时用的信息,doctype之后时我们希望返回的数据类型,可以选择的有jsonxmljsonp,在这里,我们使用json

q之后是我们所希望翻译的单词,在这里,我们填入welcome


首先,我们在线程中新建一个URL,将链接传入到url里,然后使用url的openConnection方法。这里注意使用java.net的URLConnection。

	URL url=new URL("http://fanyi.youdao.com/openapi.do?keyfrom=httpGetTest090807&key=917336328&type=data&doctype=json&version=1.1&q=welcome");
        java.net.URLConnection urlConnection=url.openConnection();

接着我们创建输入流。

	InputStream is=urlConnection.getInputStream();
        InputStreamReader isr=new InputStreamReader(is);
        BufferedReader br=new BufferedReader(isr);
之后我们创建一个String和StringBuilder。
                String Line;
                StringBuilder builder=new StringBuilder();
                while ((Line=br.readLine())!=null){
                    builder.append(Line);
                }

使用一个循环来将br中的数据存储。

最后,关闭输入流同时进行输出

                br.close();
                isr.close();
                is.close();

                System.out.println(builder.toString());


这是我们要在主方法中开启这个线程,然后观察结果,如下(图并没有截全)







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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值