java 缘起_缘起 网络编程
我為什么要學習Java網絡編程,在實際的項目開發中,尤其是移動電信領域。很不辛或者是很辛運來到這個行業。之所以這樣說是因為我之前做的項目一般的都是CRUD的基本操作,雖然說現在的Java企業架構一般都是面向微服務,諸如Spring Cloud,Spring Boot?;蛘呤且恍┓植际娇蚣?#xff0c;幾乎都是面向服務的架構,服務的提供者,服務的消費者等等。我也是停留在會使用的階段,雖然我知道分布式框架的底層都存在著Java網絡通訊,可是始終不敢去正面的和他交鋒,我之所以說不幸之處在于我從來沒有去研究這塊,辛運的是我不得不研究這塊。我的項目的實際開發階段,需要更多的網絡編程。
1 家書抵萬金
A要給B寫信,那么首先要知道B的地址,然后通過郵局送達。B如果要回信,那么同樣的也需要A的地址,也要通過郵局去送達。
在這里我們不關心郵局是如何送達信件的,是騎馬也好,或者步行或者坐船等,這些過程或者方式我們是不需要關心的。上述的這種例子就是一個很好的計算機通訊的示例。
下面看一個模擬通訊的實例
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{/*** 創建字符緩沖流對象,讀取字符輸入流*/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();
}
}
調用talk()方法,當我們每輸入一次,就會返回echo:xxx.知道輸入的字符串和程序中的相等,程序執行完畢。這就像我們請求一次服務器一樣,服務器會返回給我們一些數據,直到程序運行的終止
2 計算機網絡概念
1 結點:在計算機網絡中,每一臺計算機都可以說是一個結點,也包括一些終端,比如路由器,打印機等。
2 網絡協議:計算機之間的交流的方式。人和人之間使用語言交流,計算機之間的交流方式或者語言方式就是網絡協議
3 Internet:提供了www服務,FTP(文件傳輸)服務,E-mail服務,Telnet(遠程登陸)服務。
3 OSI模型
TCP/IP協議:問題來了,比如說上海人之間使用上海話交流,廣東人之間使用粵語交流,那么上海人和廣東人之間使用什么交流呢?答案自然是普通話。同樣的一個網絡使用A協議,一個網絡使用B協議溝通,那么這兩個網絡之間怎么交流,答案就是TCP/IP協議。
比如說手機產生之初,每一個人的手機型號,品牌可能不相同,因此充電器也是不相同。你的手機沒電了一般不可能使用我的充電器,到了最后,標準出來了,使用同樣的USB接口,這樣就解決了。網絡之間也是這樣的。為了解決網絡之間的便利通訊,OSI標準出來了,open system interConnection。下面我們看看OSI的七層模型。
總結
以上是生活随笔為你收集整理的java 缘起_缘起 网络编程的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: liunx 上get 不到url参数 j
- 下一篇: java程序的运行结果依赖操作系统吗_j