간단한 소켓서버(Socket Sever) 만들기 예제입니다.
JAVA 로 구현하는 간단한 소켓서버 (Socket Server) 의 구현 예제 입니다.
// 서버 및 포트 설정
ServerSocket ss = new ServerSocket(3000);
// 클라이언트 연결 소켓 생성
Socket s = ss.accept();
// 접속한 클라이언트 정보 얻기
InetAddress userInfo = s.getInetAddress();
String ip = userInfo.getHostAddress();
// 소켓으로부터 inputStream 과 outputStream 얻기
InputStream is = s.getInputStream();
OutputStream os = s.getOutputStream();
BufferedReader br = new BufferedReader(new InputStreamReader(is));
BufferedWriter bw = new BufferedWriter(new OutputStreamWriter(os));
// 클라이언트가 전송한 메세지 받기
String message = br.readLine();
// 클라이언트에 메세지 전송
bw.write("["+ip+"]님 환영합니다. \n");
*** 소스
package com.redjava.interfaces.socket;
import java.io.*;
import java.net.*;
public class EchoServer{
public EchoServer(){
try{
ServerSocket ss = new ServerSocket(3000);
System.out.println("=== 서버 가동 ===");
Socket s = ss.accept();
System.out.println("= 클라이언트 연결 소켓 생성 =");
InetAddress userInfo = s.getInetAddress();
String ip = userInfo.getHostAddress();
System.out.println("[" + ip + "] 님 접속");
InputStream is = s.getInputStream();
OutputStream os = s.getOutputStream();
BufferedReader br = new BufferedReader(new InputStreamReader(is));
BufferedWriter bw = new BufferedWriter(new OutputStreamWriter(os));
String message = br.readLine();
System.out.println("[메세지]" + message);
bw.write("["+ip+"]님 환영합니다. \n");
bw.flush();
}catch(IOException e){
System.out.println("[경고] 해당 PORT는 사용중입니다.");
}
}
public static void main(String[] args){
new EchoServer();
}
}
'프로그래밍 Tip > JAVA & JSP' 카테고리의 다른 글
[JAVA/JSP] 전체 request, attribute 확인하기 (0) | 2019.06.24 |
---|---|
[JAVA] 간단한 소켓 클라이언트 (Socket Client) 만들기 (0) | 2015.01.27 |
[JAVA] 나머지 연산자를 활용한 예제 (0) | 2015.01.27 |
[JAVA] 사칙 연산자 기본 사용 예제 (0) | 2015.01.27 |
[JAVA] charArray을 사용한 간단한 예제 (0) | 2015.01.26 |