服務端代碼: public class TalkServer {public static void main(String args[]){try {//創建服務器,開放7777端口ServerSocket server = new ServerSocket(7777);while(true){Socket socket = server.accept();System.out.println("客戶端與服務端已建立連接");//獲取客戶端消息BufferedReader br = new BufferedReader(new InputStreamReader(socket.getInputStream()));String message = br.readLine();System.out.println("客戶端消息:"+ message); server.close();}} catch (IOException e) {// TODO Auto-generated catch block e.printStackTrace();}} }
客戶端代碼:
public class TalkClient {public static void main(String args[]){try {Socket socket = new Socket("127.0.0.1",7777);BufferedWriter bw = new BufferedWriter(new OutputStreamWriter(socket.getOutputStream())); Scanner scanner = new Scanner(System.in); while(true){System.out.println("請輸入發送消息內容:");bw.write(scanner.nextLine()); bw.flush(); socket.close();scanner.close();}} catch (UnknownHostException e) {// TODO Auto-generated catch block e.printStackTrace();} catch (IOException e) {// TODO Auto-generated catch block e.printStackTrace();}} }
1、如果沒有客戶端服務,直接通過瀏覽器發送請求,即輸入http://127.0.0.1:7777或localhost:7777,服務端運行結果:
客戶端與服務端已建立連接
客戶端消息:GET / HTTP/1.1
2、socket創建客戶端發送請求,通過鍵盤輸入發送請求
客戶端運行結果:
請輸入發送消息內容:
hello
服務端運行結果:
客戶端與服務端已建立連接
客戶端消息:hello? ?
?