import java.io.*;//cd e:\java project\head first java\chapter 15\dailyadviceserver
import java.net.*;
public class DailyAdviceServer
{
String [] adviceList={"Take smaller bites","Go for the tight jeanS.No they do Not make you look fat.","One word:inappropriate","Just for today,be honest.Tell your boss what you *really* think","You might want to rethink that haircut."};
public static void main(String [] args)
{
DailyAdviceServer server=new DailyAdviceServer();
server.go();
}
private void go()
{
try{
ServerSocket serverSock=new ServerSocket(4242);
while(true)
{
Socket sock=serverSock.accept();//这个方法会停下来等待要求到达之后才会继续
PrintWriter writer=new PrintWriter(sock.getOutputStream());
String advice=getAdvice();
writer.println(advice);
writer.close();
System.out.println(advice);
}
}catch(IOException ex){ex.printStackTrace();}
}
private String getAdvice()
{
int random=(int)(Math.random()*adviceList.length);
return adviceList[random];
}
}
import java.io.*;
import java.net.*;
public class DailyAdviceClient
{
public void go()
{
try{
Socket s=new Socket("127.0.0.1",4242);
InputStreamReader streamReader=new InputStreamReader(s.getInputStream());
BufferedReader reader=new BufferedReader(streamReader);
String advice=reader.readLine();
System.out.println("Today you should: "+advice);
reader.close();
}catch(IOException ex){ex.printStackTrace();}
}
public static void main(String [] args)
{
DailyAdviceClient client=new DailyAdviceClient();
client.go();
}
}