소켓 프로그래밍 기본 패턴
1. 소켓 오픈
2. 데이터 전송 및 받을 스트림 생성
3. 데이터를 전송 및 받음
4. 소켓 닫기
--서버측 소스코드
package step1;
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStream;
import java.io.InputStreamReader;
import java.net.ServerSocket;
import java.net.Socket;
public class TestServer {
/**
* @param args
* @throws IOException
*/
public static void main(String[] args) throws IOException {
// TODO Auto-generated method stub
//서버측 기본 코딩 패턴
//9909포트번호로 소켓을 연다.
ServerSocket socket = new ServerSocket(9909);
//client 접속을 기다림
Socket client = socket.accept();
//클라이언트로 부터 정보를 받을 스트림
InputStreamReader isr = new InputStreamReader(client.getInputStream());
BufferedReader br = new BufferedReader(isr);
//client가 보낸 정보 출력
System.out.println(br.readLine());
//클라이언트 종료
client.close();
//서버종료
socket.close();
}
}
-- 클라이언트측 소스코드
package step1;
import java.io.IOException;
import java.io.OutputStream;
import java.io.OutputStreamWriter;
import java.net.Socket;
import java.net.UnknownHostException;
public class TestClient {
/**
* @param args
* @throws IOException
* @throws UnknownHostException
*/
public static void main(String[] args) throws UnknownHostException, IOException {
// TODO Auto-generated method stub
//클라이언트 접속 프로그램 패턴
Socket socket = new Socket("127.0.0.1", 9909);
OutputStreamWriter osw = new OutputStreamWriter(socket.getOutputStream());
osw.write("클라이언트 문자 전송");
//osw.flush();
osw.close();
socket.close();
}
}
'Code Archive > JAVA' 카테고리의 다른 글
| Step18. JDBC 기본 문법 (0) | 2014.09.12 |
|---|---|
| Step15. Thread(스레드) (0) | 2014.09.12 |
| Step13. 객체 직렬화(Object Serialization) (0) | 2014.09.12 |
| Step12. Stream, 파일 입출력 (0) | 2014.09.12 |
| Step11. Exception(예외처리) (0) | 2014.09.12 |