一,传输普通数据
public void test() throws Exception {
//客户端,建立连接,指定ip和端口号
Socket socket=new Socket("192.127.0.1",8080);
//打开输出流
OutputStream os=socket.getOutputStream();
//打开输入流
InputStream is=socket.getInputStream();
String info="name:zsc;password:123456";
//发送信息
os.write(info.getBytes());
socket.shutdownOutput();
BufferedReader br=new BufferedReader(new InputStreamReader(is));
//接收服务器的响应,读取信息
while (br.readLine()!=null){
}
}
@org.junit.Test
public void test1() throws Exception {
//服务端,建立服务器,指定端口号并开始监听
ServerSocket ss=new ServerSocket(8080);
//等待客户端发起通信
Socket socket=ss.accept();
//打开输入流
InputStream is=socket.getInputStream();
//打开输出流
OutputStream os=socket.getOutputStream();
BufferedReader br=new BufferedReader(new InputStreamReader(is));
//获取客户端信息
while (br.readLine()!=null){
}
String info="欢迎";
//输出信息
os.write(info.getBytes());
os.flush();
os.close();
is.close();
}
二,用序列化传输数据
public void test() throws Exception {
//客户端,建立连接,指定ip和端口号
Socket socket=new Socket("192.127.0.1",8080);
//打开输出流
OutputStream os=socket.getOutputStream();
ObjectOutputStream oos=new ObjectOutputStream(os);
//打开输入流
InputStream is=socket.getInputStream();
ObjectInputStream ois=new ObjectInputStream(is);
Bbs_User user=new Bbs_User();
//发送信息
oos.writeObject(user);
socket.shutdownOutput();
//接收服务器的响应,读取信息
user=(Bbs_User) ois.readObject();
if(user!=null){
}
}
@org.junit.Test
public void test1() throws Exception {
//服务端,建立服务器,指定端口号并开始监听
ServerSocket ss = new ServerSocket(8080);
//等待客户端发起通信
Socket socket = ss.accept();
//打开输入流
InputStream is = socket.getInputStream();
ObjectInputStream ois = new ObjectInputStream(is);
//打开输出流
OutputStream os = socket.getOutputStream();
ObjectOutputStream oos = new ObjectOutputStream(os);
//获取客户端信息
Bbs_User user = new Bbs_User();
user = (Bbs_User) ois.readObject();
//输出信息
oos.writeObject(user);
oos.flush();
oos.close();
ois.close();
}