import java.net.*;
import java.io.*;
import java.lang.*;
public class SocketServer
{
ServerSocket ss=null;
Socket s=null;
DataInputStream inStream=null;
DataOutputStream outStream=null;
public SocketServer()
{
try
{
init();
}
catch(Exception e)
{
System.out.println(e.toString());
}
}
void init() throws Exception
{
ss=new ServerSocket(2000);
s.setSoTimeout(3000);
}
void waitForClient()
{
try
{
s=ss.accept();
inStream=new DataInputStream(s.getInputStream());
outStream=new DataOutputStream(s.getOutputStream());
outStream.writeUTF("1");
s.setSoTimeout(3000);
waitData();
}
catch(Exception e)
{
System.out.println(e.toString());
}
}
void waitData()
{
while(true)
{
try
{
String str=inStream.readUTF();
System.out.println("Server accept:"+str);
int nu=Integer.parseInt(str)+1; if(nu>10)
{
System.out.println("send end");
break;
}
else
{
str=Integer.toString(nu);
outStream.writeUTF(str);
}

}
catch(Exception e){
System.out.println(e.toString());
break;
}
}
public static void  main(String[] args)
  {
  SocketSever server=new SocketServer();
  server.waitForClient();
  }
  
}
}import java.lang.*;
import java.io.*;
import java.net.*;
public class SocketClient
{
Socket s=null;
DataInputStream inStream=null;
DataOutputStream outStream=null;
public SocketClient()
{
try
{
init();
waitData();
}
catch(Exception e)
{
System.out.println(e.toString());
}
}
void init() throws Exception
{
s=new Socket("172.23.78.187",2000);
inStream=new DataInputStream(s.getInputStream());
outStream=new DataOutputStream(s.getOutputStream());
s.setSoTimeout(3000);
}
void waitData()
{
while(true)
{
try{
String str=inStream.readUTF();
System.out.println("Client accept:"+str);
str=Integer.toString(Integer.parseInt(str)+1);
outStream.writeUTF(str);
}
catch(Exception e)
{
System.out.println(e.toString());
break;
}
}
}
public static void main(String[] args)
{
new SocketClient();
}
}