java 缘起_缘起 网络编程
我為什么要學(xué)習(xí)Java網(wǎng)絡(luò)編程,在實(shí)際的項(xiàng)目開發(fā)中,尤其是移動(dòng)電信領(lǐng)域。很不辛或者是很辛運(yùn)來到這個(gè)行業(yè)。之所以這樣說是因?yàn)槲抑白龅捻?xiàng)目一般的都是CRUD的基本操作,雖然說現(xiàn)在的Java企業(yè)架構(gòu)一般都是面向微服務(wù),諸如Spring Cloud,Spring Boot。或者是一些分布式框架,幾乎都是面向服務(wù)的架構(gòu),服務(wù)的提供者,服務(wù)的消費(fèi)者等等。我也是停留在會(huì)使用的階段,雖然我知道分布式框架的底層都存在著Java網(wǎng)絡(luò)通訊,可是始終不敢去正面的和他交鋒,我之所以說不幸之處在于我從來沒有去研究這塊,辛運(yùn)的是我不得不研究這塊。我的項(xiàng)目的實(shí)際開發(fā)階段,需要更多的網(wǎng)絡(luò)編程。
1 家書抵萬金
A要給B寫信,那么首先要知道B的地址,然后通過郵局送達(dá)。B如果要回信,那么同樣的也需要A的地址,也要通過郵局去送達(dá)。
在這里我們不關(guān)心郵局是如何送達(dá)信件的,是騎馬也好,或者步行或者坐船等,這些過程或者方式我們是不需要關(guān)心的。上述的這種例子就是一個(gè)很好的計(jì)算機(jī)通訊的示例。
下面看一個(gè)模擬通訊的實(shí)例
packagecom.asiaInfo.caozg.ch_01;importjava.io.BufferedReader;importjava.io.IOError;importjava.io.InputStreamReader;/*** @Authgor: gosaint
* @Description:
* @Date Created in 12:35 2018/1/5
* @Modified By:*/
public classEchoPlayer {public staticString echo(String msg){return "echo :"+msg;
}public static void talk() throwsIOError{try{/*** 創(chuàng)建字符緩沖流對(duì)象,讀取字符輸入流*/BufferedReader br= new BufferedReader(newInputStreamReader(System.in));
String msg=null;while((msg=br.readLine())!=null){
System.out.println(echo(msg));if(msg.equals("bye")){break;
}
}
}catch(Exception e){
e.printStackTrace();
}
}public static voidmain(String[] args) {
talk();
}
}
調(diào)用talk()方法,當(dāng)我們每輸入一次,就會(huì)返回echo:xxx.知道輸入的字符串和程序中的相等,程序執(zhí)行完畢。這就像我們請(qǐng)求一次服務(wù)器一樣,服務(wù)器會(huì)返回給我們一些數(shù)據(jù),直到程序運(yùn)行的終止
2 計(jì)算機(jī)網(wǎng)絡(luò)概念
1 結(jié)點(diǎn):在計(jì)算機(jī)網(wǎng)絡(luò)中,每一臺(tái)計(jì)算機(jī)都可以說是一個(gè)結(jié)點(diǎn),也包括一些終端,比如路由器,打印機(jī)等。
2 網(wǎng)絡(luò)協(xié)議:計(jì)算機(jī)之間的交流的方式。人和人之間使用語言交流,計(jì)算機(jī)之間的交流方式或者語言方式就是網(wǎng)絡(luò)協(xié)議
3 Internet:提供了www服務(wù),FTP(文件傳輸)服務(wù),E-mail服務(wù),Telnet(遠(yuǎn)程登陸)服務(wù)。
3 OSI模型
TCP/IP協(xié)議:問題來了,比如說上海人之間使用上海話交流,廣東人之間使用粵語交流,那么上海人和廣東人之間使用什么交流呢?答案自然是普通話。同樣的一個(gè)網(wǎng)絡(luò)使用A協(xié)議,一個(gè)網(wǎng)絡(luò)使用B協(xié)議溝通,那么這兩個(gè)網(wǎng)絡(luò)之間怎么交流,答案就是TCP/IP協(xié)議。
比如說手機(jī)產(chǎn)生之初,每一個(gè)人的手機(jī)型號(hào),品牌可能不相同,因此充電器也是不相同。你的手機(jī)沒電了一般不可能使用我的充電器,到了最后,標(biāo)準(zhǔn)出來了,使用同樣的USB接口,這樣就解決了。網(wǎng)絡(luò)之間也是這樣的。為了解決網(wǎng)絡(luò)之間的便利通訊,OSI標(biāo)準(zhǔn)出來了,open system interConnection。下面我們看看OSI的七層模型。
總結(jié)
以上是生活随笔為你收集整理的java 缘起_缘起 网络编程的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: liunx 上get 不到url参数 j
- 下一篇: java程序的运行结果依赖操作系统吗_j