서버
package chat;
import java.io.*;
import java.net.*;
//ss 서버소켓 클래스 객체
//ssock 소켓
//sbr 서버 버퍼 리더
//spw 서버 프린트라이터
//reading 서버쪽 리드라인
public class server {
public static void main(String args[]) throws IOException {
ServerSocket ss = new ServerSocket(1525);
System.out.println("서버: 클라이언트 접속을 기다립니다");
Socket ssock = ss.accept();
System.out.println("서버: "+ssock.getInetAddress()+ " 클라이언트와 "+ssock.getLocalPort()+"포트로 연결이 되었습니다.");
BufferedReader sbr = new BufferedReader(new InputStreamReader(ssock.getInputStream()));
PrintWriter spw = new PrintWriter (ssock.getOutputStream(), true);
String reading = sbr.readLine();
System.out.println("서버(수신): "+reading);
spw.println(reading); //서버에서 클라이언트로 받은 메세지 보냄
System.out.println("서버(송신): "+reading);
spw.close();//출력 스트림
sbr.close();// 입력스트림
ssock.close();
ss.close();
}
}
클라이언트
package chat;
import java.io.*;
import java.net.*;
import java.util.*;
public class Client {
public static String Check(String ch){
String spam = "123";
if(spam.equals(ch))
return "스팸입니다";
else
return "스팸이 아닙니다";
}
public static void main(String args[]) throws IOException{
Scanner scanner = new Scanner(System.in);
String check;
Socket csock = new Socket("127.0.0.1", 1525);
System.out.println("서버에 연결되었습니다");
String text = scanner.next();
System.out.println("클라이언트(송신) :"+text);
PrintWriter cpw = new PrintWriter(csock.getOutputStream(), true);
check = Check(text);
System.out.println(check);
cpw.println(check);
BufferedReader cbr = new BufferedReader(new InputStreamReader(csock.getInputStream()));
String reading = cbr.readLine();
System.out.println("클라이언트 (수신): "+ reading);
cbr.close();
cpw.close();
csock.close();
}
}
http://alecture.blogspot.kr/2011/06/socket-programming.html
강이님의 자바강좌를 토대로 작성했습니다.