java socket程序_java 简单的java socket程序
//服務(wù)器端:ServerDemo.java
import java.io.DataInputStream;
import java.io.DataOutputStream;
import java.io.IOException;
import java.net.ServerSocket;
import java.net.Socket;
public class ServerDemo
{
public static void main(String[] args)
{
ServerSocket ss = null;
try {
ss = new ServerSocket(8888);
//服務(wù)器接收到客戶端的數(shù)據(jù)后,創(chuàng)建與此客戶端對話的Socket
Socket socket = ss.accept();
//用于向客戶端發(fā)送數(shù)據(jù)的輸出流
DataOutputStream dos = new DataOutputStream(socket.getOutputStream());
//用于接收客戶端發(fā)來的數(shù)據(jù)的輸入流
DataInputStream dis = new DataInputStream(socket.getInputStream());
System.out.println("服務(wù)器接收到客戶端的連接請求:" + dis.readUTF());
//服務(wù)器向客戶端發(fā)送連接成功確認信息
dos.writeUTF("接受連接請求,連接成功!");
//不需要繼續(xù)使用此連接時,關(guān)閉連接
socket.close();
ss.close();
} catch (IOException e){
e.printStackTrace();
}
}
}
///
//客戶端:ClientDemo.java
import java.io.DataInputStream;
import java.io.DataOutputStream;
import java.io.IOException;
import java.io.OutputStream;
import java.net.Socket;
import java.net.UnknownHostException;
public class ClientDemo {
public static void main(String[] args)
{
Socket socket = null;
try {
socket = new Socket("localhost",8888);
//獲取輸出流,用于客戶端向服務(wù)器端發(fā)送數(shù)據(jù)
DataOutputStream dos = new DataOutputStream(socket.getOutputStream());
//獲取輸入流,用于接收服務(wù)器端發(fā)送來的數(shù)據(jù)
DataInputStream dis = new DataInputStream(socket.getInputStream());
//客戶端向服務(wù)器端發(fā)送數(shù)據(jù)
dos.writeUTF("我是客戶端,請求連接!");
//打印出從服務(wù)器端接收到的數(shù)據(jù)
System.out.println(dis.readUTF());
//不需要繼續(xù)使用此連接時,記得關(guān)閉哦
socket.close();
} catch (UnknownHostException e)
{
e.printStackTrace();
} catch (IOException e)
{
e.printStackTrace();
}
}
}
///
運行,開兩個CMD窗口,分別運行:java ServerDemo和java ClientDemo
運行結(jié)果如下:
java ServerDemo
服務(wù)器接收到客戶端的連接請求:我是客戶端,請求連接!
java ClientDemo 接受連接請求,連接成功!
總結(jié)
以上是生活随笔為你收集整理的java socket程序_java 简单的java socket程序的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 选股应该关注哪些要素 特别注意上市公司
- 下一篇: 信用卡附属卡有什么用