套接字編程是一種在網(wǎng)絡(luò)上的兩個節(jié)點之間進(jìn)行通信的方法。一個套接字(節(jié)點)偵聽IP地址上的特定端口,而另一個套接字則伸出手來形成連接。當(dāng)客戶機(jī)試圖聯(lián)系服務(wù)器時,服務(wù)器創(chuàng)建偵聽器套接字。在Java培訓(xùn)學(xué)習(xí)中,也有關(guān)于java套接字編程的知識講解,幫助你快速了解java套接字的特性。
使用套接字編程在兩臺計算機(jī)之間建立TCP連接的步驟如下:
步驟1 -服務(wù)器創(chuàng)建一個ServerSocket對象,并指定將進(jìn)行哪個端口號的通信。
步驟2 -在實例化ServerSocket對象之后,服務(wù)器調(diào)用ServerSocket類的accept()方法。該程序等待客戶端通過指定端口連接到服務(wù)器。
步驟3 -當(dāng)服務(wù)器空閑時,客戶機(jī)創(chuàng)建一個Socket類的對象,并指定要連接的服務(wù)器名和端口號。
步驟4 -按照前面的步驟,Socket類的function Object(){[本地代碼] }嘗試將客戶機(jī)連接到指定的服務(wù)器和端口號。如果通信通過了身份驗證,客戶端將收到一個能夠與服務(wù)器交互的套接字對象。
第5步-服務(wù)器上的accept()方法返回對服務(wù)器上一個新套接字的引用,該套接字連接到客戶機(jī)的套接字。
連接穩(wěn)定后,可以通過I/O流進(jìn)行通信。套接字類對象有一個輸出流和一個輸入流??蛻魴C(jī)的OutputStream連接到服務(wù)器的InputStream,然后與服務(wù)器的OutputStream合并。TCP或傳輸控制協(xié)議是一種雙向通信協(xié)議。因此,信息可以通過兩個流同時傳輸。參加java培訓(xùn)是入門學(xué)習(xí)的最佳選擇,有經(jīng)驗豐富的專業(yè)老師面授指導(dǎo)教學(xué),通過理論結(jié)合實戰(zhàn)的方式教授java基礎(chǔ)知識,幫助你更好的理解與運用java。
套接字類
域java.net。套接字類允許我們創(chuàng)建socket對象來幫助實現(xiàn)所有基本的Socket操作。用戶可以執(zhí)行各種網(wǎng)絡(luò)任務(wù),例如發(fā)送數(shù)據(jù)、讀取數(shù)據(jù)和關(guān)閉連接。Java.net用于創(chuàng)建每個套接字對象。一個遠(yuǎn)程主機(jī)專門與套接字類相關(guān)聯(lián)。如果用戶希望連接到另一臺主機(jī),他必須首先創(chuàng)建一個新的套接字對象。
ServerSocket類方法
public void connect ()
此方法將特定主機(jī)連接到套接字。只有當(dāng)用戶使用無參數(shù)函數(shù)創(chuàng)建套接字時,才需要此方法。
public int getPort()
這個方法返回遠(yuǎn)程機(jī)器上套接字所連接的端口。
public InetAddress getInetAddress()
這個方法返回套接字連接的另一臺計算機(jī)的地址。
public int getLocalPort()
該方法用于將端口返回到套接字連接的本地機(jī)器。
public socket address getRemoteSocketAddress()
這個方法返回遠(yuǎn)程套接字的位置。
public InputStream getInputStream ()
此方法用于返回套接字的輸入流。這個輸入流與遠(yuǎn)程套接字的輸出流相結(jié)合。
public OutputStream getOutputStream ()
此方法用于返回套接字的輸出流。輸出流與遠(yuǎn)程套接字的輸入流相結(jié)合。
public void close ()
該方法關(guān)閉套接字,防止套接字類對象再次連接到任何服務(wù)器。
想要全面理解這些知識,可以報個Java培訓(xùn)班來學(xué)習(xí),不僅有理論知識的細(xì)致講解,還有實操項目訓(xùn)練,有助于你在編程中更好的運用它們。