對於通訊來說,不存在絕對的伺服器和客戶端,誰在等待別人來,誰就是伺服器,誰主動去聯絡人,誰就是客戶端。
所以。
你要想客戶端接受訊息,那在啟動客戶端的時候,在客戶端程式裡開始一個提供埠的Socket就可以了。
ServerSocket serverSocket = new ServerSocket(5000);
while (true) {
final Socket socket = serverSocket.accept();
new Thread() {
Socket mySocket = socket;
@Override
public void run() {
try {
System.out.println(mySocket);
InputStream is = mySocket.getInputStream();
byte[] bytes = new byte[1024];
int n = is.read(bytes);
System.out.println(new String(bytes, 0, n));
OutputStream os = mySocket.getOutputStream();
os.write(("server reply at time " + new Date()
.toString()).getBytes());
mySocket.close();
} catch (Exception e) {
e.printStackTrace();
}
}.start();
對於通訊來說,不存在絕對的伺服器和客戶端,誰在等待別人來,誰就是伺服器,誰主動去聯絡人,誰就是客戶端。
所以。
你要想客戶端接受訊息,那在啟動客戶端的時候,在客戶端程式裡開始一個提供埠的Socket就可以了。
ServerSocket serverSocket = new ServerSocket(5000);
while (true) {
final Socket socket = serverSocket.accept();
new Thread() {
Socket mySocket = socket;
@Override
public void run() {
try {
System.out.println(mySocket);
InputStream is = mySocket.getInputStream();
byte[] bytes = new byte[1024];
int n = is.read(bytes);
System.out.println(new String(bytes, 0, n));
OutputStream os = mySocket.getOutputStream();
os.write(("server reply at time " + new Date()
.toString()).getBytes());
mySocket.close();
} catch (Exception e) {
e.printStackTrace();
}
}
}.start();
}