티스토리 뷰
java 네트워크 소켓 연결하기
이번 시간에는 네트워크 소켓을 이용하여 다른 시스템에 연결하는 방법을 알아보도록 하겠습니다.
자바에서는 이런 네트워크 연결을 위해서 java.net.Socket 클래스를 제공하고 있습니다.
소켓 연결을 하려면 서버에 대해 두가지 사항을 알아야 합니다. 상대방 서버가 어디에 위치해 있는지 그리고 어떤 포트에서 돌아가고 있는지
알아야 서로 통신을 할수 있습니다. IP 주소와 TCP포트를 알고 있어야 합니다.
물론 우선적으로 방화벽이 없다는 가정하에요..
Socket chatSocket = new Socket("연결할 아이피정보", tcp포트번호);
사용방법은 위처럼 객체를 생성할때 연결할 아이피정보와 tcp포트번호를 넘겨주면 됩니다.
여기서 tcp포트에 대해 알아보겠습니다.
인터넷 웹포트 표준은 80port입니다. 표준 포트는 생략가능합니다.
telnet 서버는 23번 ftp는 20번, pop3 메일서버는 110번 등 서버마다 다양한 표준 포트가 있습니다.
표준 포트가 아닌 다른 포트를 사용하려고 할때는 반드시 포트번호를 명시해줘야 합니다.
포트에는 0번부터 시작하여 65535번을 사용할수가 있습니다.
클라이언트
import java.io.BufferedReader;
public static void main(String[] args) throws IOException { Socket clientSocket = new Socket("127.0.0.1", 8080); System.out.println("서버로부터 받은 값 " + returnMessage);
|
서버
import java.io.IOException;
public class ServerClass {
|
간단하게 서로 시스템에 연결하려면 서버측 소스와 클라이언트 소스가 필요합니다.
전 시스템이 하나만 있는 관계로 서버와 클라이언트 시스템을 제 로컬 컴퓨터로 하였습니다.
해당 2가지 클래스를 컴파일한후
먼저 서버를 실행시킵니다.
그리고 클라이언트를 실행시키면 서버측에서 보낸 메세지를 받을수 있습니다.
결과값 : 서버로부터 받은값 보낼 메세지 테스트~~~~~~~~~~
결과값을 보시면 클라이언트 실행시 서버로부터 받은값을 표시해주고 있습니다.
더 정확하게 테스트를 하려면 클라리언트와 서버측 시스템이 서로 분리가 되있으면 정확하게 테스트가 가능합니다.
서버측 시스템에서 데이타를 보내면 클라이언트에서는 서버에서 보낸 데이타를 받아서 화면에 출력할수 있습니다.
이런 원리를 이용해서 채팅 프로그램도 만들수가 있습니다.
이상 java 네트워크 소켓 연결하기 편 포스팅을 마칩니다.
'JAVA(프로그래밍)' 카테고리의 다른 글
java 메모장 노트패드 만들기 (0) | 2018.07.31 |
---|---|
자바 기초 패키지 가져오는 방법 (0) | 2018.07.30 |
자바 직렬화된 객체를 파일에 저장하는 방법 (0) | 2018.07.29 |
java File Class 알아보기 (0) | 2018.07.28 |
java String 문자열 텍스트 파일에 저장하기 FileWriter (0) | 2018.07.26 |
- Total
- Today
- Yesterday
- java 노트패드
- File Class
- java tihs
- java LinkedHashMap
- java treemap
- java replaceAll
- java Properties
- java 네트워크
- linkHashMap
- 자바
- java문자열저장
- java ArrayList
- java iterator
- 객체파일저장
- 자바 랩퍼
- java 메모장
- java File
- java wrapper class
- java substring
- java wrapper
- java문자열자르기
- java 소켓
- java배열
- Java
- java Enumeration
- java StringBuffer
- java join
- java텍스트파일저장
- java Vector
- 자바 패키지
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | 6 | 7 |
8 | 9 | 10 | 11 | 12 | 13 | 14 |
15 | 16 | 17 | 18 | 19 | 20 | 21 |
22 | 23 | 24 | 25 | 26 | 27 | 28 |
29 | 30 | 31 |