Java使用HTTP的get方法讀取網(wǎng)絡(luò)數(shù)據(jù)瓤狐、使用post方法與網(wǎng)絡(luò)交互通信

1.Java使用HTTP的get方法讀取網(wǎng)絡(luò)數(shù)據(jù)

package peixun;

import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStream;
import java.io.InputStreamReader;
import java.net.MalformedURLException;
import java.net.URL;
import java.net.URLConnection;

public class TestGet {

    public static void main(String[] args) {
        new ReadByGet().start();
    }
    
    static class ReadByGet extends Thread {
        
        @Override
        public void run() {
            try {
                
                URL url = new URL("http://fanyi.youdao.com/openapi.do?keyfrom=yyxiaozhan&key=1696230822&type=data&doctype=xml&version=1.1&q=welcome");
                //使用方法打開鏈接,并使用connection接受返回值
                URLConnection connection = url.openConnection();
                //獲取connection輸入流,并用is接受返回值
                InputStream is = connection.getInputStream();
                //將字節(jié)流向字符流的轉(zhuǎn)換
                InputStreamReader isr = new InputStreamReader(is);
                BufferedReader br = new BufferedReader(isr);
                
                String line;
                /**
                 * StringBuilder和StringBuffer不同的地方在于 StringBuffer是線程安全的
                 * 單線程泊交、不需要線程安全的情況下欧瘪,處于性能的考慮沾凄,優(yōu)先選擇StringBuilder
                 */
                StringBuilder builder = new StringBuilder();
                while ((line = br.readLine())!= null) {
                    builder.append(line);
                }
                
                br.close();
                isr.close();
                is.close();
                
                System.out.println(builder.toString());
                
            } catch (MalformedURLException e) {
                e.printStackTrace();
            } catch (IOException e) {
                e.printStackTrace();
            }
        }
        
    }

}

2.Java使用HTTP的post方法與網(wǎng)絡(luò)交互通信

package peixun;

import java.io.BufferedReader;
import java.io.BufferedWriter;
import java.io.IOException;
import java.io.InputStream;
import java.io.InputStreamReader;
import java.io.OutputStream;
import java.io.OutputStreamWriter;
import java.net.HttpURLConnection;
import java.net.MalformedURLException;
import java.net.URL;

public class TestPost {

    public static void main(String[] args) {
        new ReadByPost().start();
    }

}

class ReadByPost extends Thread{
    
    @Override
    public void run() {
        try {
            
            URL url = new URL("http://fanyi.youdao.com/openapi.do");
            HttpURLConnection connection =  (HttpURLConnection) url.openConnection();
            connection.addRequestProperty("encoding", "UTF-8");
            //設(shè)置為true焚廊,connection就可以從網(wǎng)絡(luò)獲取數(shù)據(jù)
            connection.setDoInput(true);
            //設(shè)置為true,connection就可以向網(wǎng)絡(luò)傳送數(shù)據(jù)
            connection.setDoOutput(true);
            //把訪問方式換成post方式
            /**
             * 使用方法時候要先發(fā)送數(shù)據(jù)撤防,所以O(shè)utputStream放在InputStream前面
             */
            connection.setRequestMethod("POST");
            
            //connection建立鏈接之后虽风,要獲取輸入流和輸出流
            OutputStream os = connection.getOutputStream();
            OutputStreamWriter osw = new OutputStreamWriter(os);
            BufferedWriter bw = new BufferedWriter(osw); 
            
            bw.write("keyfrom=yyxiaozhan&key=1696230822&type=data&doctype=xml&version=1.1&q=welcome");
            bw.flush();
            
            //connection建立鏈接之后,要獲取輸入流和輸出流
            InputStream  is = connection.getInputStream();
            InputStreamReader isr = new InputStreamReader(is);
            BufferedReader br = new BufferedReader(isr);
            
            //進行讀取操作
            String line;
            StringBuilder builder = new StringBuilder();
            while ((line = br.readLine())!=null) {//br.readline先賦值給line寄月,然后判斷l(xiāng)ine是否為空辜膝。
                builder.append(line);
            }
            
            bw.close();
            osw.close();
            os.close();
            br.close();
            isr.close();
            is.close();
            
            System.out.println(builder.toString());
            
        } catch (MalformedURLException e) {
            e.printStackTrace();
        } catch (IOException e) {
            e.printStackTrace();
        }
    }
    
}

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末,一起剝皮案震驚了整個濱河市漾肮,隨后出現(xiàn)的幾起案子厂抖,更是在濱河造成了極大的恐慌,老刑警劉巖克懊,帶你破解...
    沈念sama閱讀 212,884評論 6 492
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件忱辅,死亡現(xiàn)場離奇詭異,居然都是意外死亡谭溉,警方通過查閱死者的電腦和手機墙懂,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 90,755評論 3 385
  • 文/潘曉璐 我一進店門,熙熙樓的掌柜王于貴愁眉苦臉地迎上來扮念,“玉大人损搬,你說我怎么就攤上這事」裼耄” “怎么了巧勤?”我有些...
    開封第一講書人閱讀 158,369評論 0 348
  • 文/不壞的土叔 我叫張陵,是天一觀的道長弄匕。 經(jīng)常有香客問我颅悉,道長,這世上最難降的妖魔是什么粘茄? 我笑而不...
    開封第一講書人閱讀 56,799評論 1 285
  • 正文 為了忘掉前任签舞,我火速辦了婚禮,結(jié)果婚禮上柒瓣,老公的妹妹穿的比我還像新娘儒搭。我一直安慰自己,他們只是感情好芙贫,可當我...
    茶點故事閱讀 65,910評論 6 386
  • 文/花漫 我一把揭開白布搂鲫。 她就那樣靜靜地躺著,像睡著了一般磺平。 火紅的嫁衣襯著肌膚如雪魂仍。 梳的紋絲不亂的頭發(fā)上拐辽,一...
    開封第一講書人閱讀 50,096評論 1 291
  • 那天,我揣著相機與錄音擦酌,去河邊找鬼俱诸。 笑死,一個胖子當著我的面吹牛赊舶,可吹牛的內(nèi)容都是我干的睁搭。 我是一名探鬼主播,決...
    沈念sama閱讀 39,159評論 3 411
  • 文/蒼蘭香墨 我猛地睜開眼笼平,長吁一口氣:“原來是場噩夢啊……” “哼园骆!你這毒婦竟也來了?” 一聲冷哼從身側(cè)響起寓调,我...
    開封第一講書人閱讀 37,917評論 0 268
  • 序言:老撾萬榮一對情侶失蹤锌唾,失蹤者是張志新(化名)和其女友劉穎,沒想到半個月后夺英,有當?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體晌涕,經(jīng)...
    沈念sama閱讀 44,360評論 1 303
  • 正文 獨居荒郊野嶺守林人離奇死亡,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點故事閱讀 36,673評論 2 327
  • 正文 我和宋清朗相戀三年痛悯,在試婚紗的時候發(fā)現(xiàn)自己被綠了渐排。 大學(xué)時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片。...
    茶點故事閱讀 38,814評論 1 341
  • 序言:一個原本活蹦亂跳的男人離奇死亡灸蟆,死狀恐怖,靈堂內(nèi)的尸體忽然破棺而出亲族,到底是詐尸還是另有隱情炒考,我是刑警寧澤,帶...
    沈念sama閱讀 34,509評論 4 334
  • 正文 年R本政府宣布霎迫,位于F島的核電站斋枢,受9級特大地震影響,放射性物質(zhì)發(fā)生泄漏知给。R本人自食惡果不足惜瓤帚,卻給世界環(huán)境...
    茶點故事閱讀 40,156評論 3 317
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望涩赢。 院中可真熱鬧戈次,春花似錦、人聲如沸筒扒。這莊子的主人今日做“春日...
    開封第一講書人閱讀 30,882評論 0 21
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽花墩。三九已至悬秉,卻和暖如春澄步,著一層夾襖步出監(jiān)牢的瞬間,已是汗流浹背和泌。 一陣腳步聲響...
    開封第一講書人閱讀 32,123評論 1 267
  • 我被黑心中介騙來泰國打工村缸, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留,地道東北人武氓。 一個月前我還...
    沈念sama閱讀 46,641評論 2 362
  • 正文 我出身青樓梯皿,卻偏偏與公主長得像,于是被迫代替她去往敵國和親聋丝。 傳聞我的和親對象是個殘疾皇子索烹,可洞房花燭夜當晚...
    茶點故事閱讀 43,728評論 2 351

推薦閱讀更多精彩內(nèi)容

  • Spring Cloud為開發(fā)人員提供了快速構(gòu)建分布式系統(tǒng)中一些常見模式的工具(例如配置管理,服務(wù)發(fā)現(xiàn)弱睦,斷路器百姓,智...
    卡卡羅2017閱讀 134,639評論 18 139
  • Android 自定義View的各種姿勢1 Activity的顯示之ViewRootImpl詳解 Activity...
    passiontim閱讀 171,872評論 25 707
  • 考慮一千次,不如去做一次况木!猶豫一萬次垒拢,不如實踐一次!華麗的跌倒火惊,勝過無謂的徘徊求类!據(jù)哈佛大學(xué)研究:一個人沒出息一定有...
    HR聚樂部閱讀 320評論 0 0
  • 首先:切換到主分支上,然后再主分支上merge屹耐。 git分支Merge到master 1.由你的分支上checko...
    冰楓紫憶閱讀 2,185評論 0 0
  • 我得去赴一個約惶岭。 我點了杯…涼白開寿弱,在服務(wù)生怪異的眼神中向二樓走去。 咖啡館二樓很冷清按灶,穿著女仆裝的服務(wù)員只在一樓...
    煩奈里閱讀 204評論 0 0