java socket 客户端和服务器端互相通信(聊天)
2012-07-23 14:13
309 查看
客户端:
[java]
view plaincopy
package com.lzx.socket;
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
import java.io.PrintWriter;
import java.net.Socket;
public class SocketClient {
public static void main(String[] args) throws IOException {
// TODO Auto-generated method stub
final Socket socket = new Socket("127.0.0.1", 10000);
//回复服务端
new Thread(){
public void run() {
try {
PrintWriter out = new PrintWriter(socket.getOutputStream(), true);
BufferedReader in = new BufferedReader(new InputStreamReader(System.in));
String readline = in.readLine();
System.out.println(readline);
while(true){
out.println(readline);
System.out.println(" client send: " + readline);
readline = in.readLine();
if(readline.equals("bye"))
break;
}
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
};
}.start();
new Thread(){
public void run() {
//获得客户端发来的数据
try {
BufferedReader reader = new BufferedReader(new InputStreamReader(socket.getInputStream()));
while(true){
System.out.println("Receive from server : " + reader.readLine());
}
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
};
}.start();
}
}
服务端:
[java]
view plaincopy
package com.lzx.socket;
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
import java.io.PrintWriter;
import java.net.ServerSocket;
import java.net.Socket;
public class SocketServer {
public static void main(String[] args) throws IOException {
ServerSocket server = new ServerSocket(10000);
final Socket socket = server.accept();
new Thread(){
public void run() {
//获得客户端发来的数据
try {
BufferedReader reader = new BufferedReader(new InputStreamReader(socket.getInputStream()));
while(true){
System.out.println("Receive from client : " + reader.readLine());
}
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
};
}.start();
new Thread(){
public void run() {
try {
PrintWriter out = new PrintWriter(socket.getOutputStream(), true);
BufferedReader in = new BufferedReader(new InputStreamReader(System.in));
String readline = in.readLine();
System.out.println(readline);
while(true){
out.println(readline);
System.out.println(" server send: " + readline);
readline = in.readLine();
if(readline.equals("bye"))
break;
}
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
};
}.start();
}
}
[java]
view plaincopy
package com.lzx.socket;
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
import java.io.PrintWriter;
import java.net.Socket;
public class SocketClient {
public static void main(String[] args) throws IOException {
// TODO Auto-generated method stub
final Socket socket = new Socket("127.0.0.1", 10000);
//回复服务端
new Thread(){
public void run() {
try {
PrintWriter out = new PrintWriter(socket.getOutputStream(), true);
BufferedReader in = new BufferedReader(new InputStreamReader(System.in));
String readline = in.readLine();
System.out.println(readline);
while(true){
out.println(readline);
System.out.println(" client send: " + readline);
readline = in.readLine();
if(readline.equals("bye"))
break;
}
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
};
}.start();
new Thread(){
public void run() {
//获得客户端发来的数据
try {
BufferedReader reader = new BufferedReader(new InputStreamReader(socket.getInputStream()));
while(true){
System.out.println("Receive from server : " + reader.readLine());
}
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
};
}.start();
}
}
服务端:
[java]
view plaincopy
package com.lzx.socket;
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
import java.io.PrintWriter;
import java.net.ServerSocket;
import java.net.Socket;
public class SocketServer {
public static void main(String[] args) throws IOException {
ServerSocket server = new ServerSocket(10000);
final Socket socket = server.accept();
new Thread(){
public void run() {
//获得客户端发来的数据
try {
BufferedReader reader = new BufferedReader(new InputStreamReader(socket.getInputStream()));
while(true){
System.out.println("Receive from client : " + reader.readLine());
}
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
};
}.start();
new Thread(){
public void run() {
try {
PrintWriter out = new PrintWriter(socket.getOutputStream(), true);
BufferedReader in = new BufferedReader(new InputStreamReader(System.in));
String readline = in.readLine();
System.out.println(readline);
while(true){
out.println(readline);
System.out.println(" server send: " + readline);
readline = in.readLine();
if(readline.equals("bye"))
break;
}
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
};
}.start();
}
}
相关文章推荐
- java socket 客户端和服务器端互相通信(聊天)
- Java Socket通信 客户端服务器端基本代码
- Java Socket通信之客户端服务端交互聊天案例
- Java Socket通信 客户端与服务器端的连接 和信息传输
- Android 使用socket 实现简单的客户端和服务器端互相通信
- Java Socket TCP 通信,实现聊天室,服务器端指定客户端发送消息
- Socket编程服务端和客户端互相通信,实现简单的聊天
- java socket编程 初级 服务器端和客户端 通信
- java socket编程 初级 服务器端和客户端 通信
- java旅行第二站--javaSE第9天--服务器端与客户端之间互相通信
- android(客户端)和PC(服务器端)通信RSA 加密解密
- c#多线程网络聊天程序代码分享(服务器端和客户端)
- nodejs中一个简单的TCP服务器端和客户端的聊天服务器
- Linux网络编程一步一步学-客户端和服务器端互相收发消息
- JavaScript客户端与服务器端的五种通信方式
- java与c语言之间的socket通信—java客户端c服务器端
- java Socket 一个服务器与多个客户端进行通信
- POSTGRESQL 让客户端互相通信
- android studio中使用AIDL进行客户端与服务端互相通信
- FMS服务器端和客户端互相调用