본문 바로가기

전체 글101

[Java/JSP] 웹 프로그램 개요 (프로토콜,IP,정적 & 동적 웹페이지) 웹 프로그램 이란? 인터넷 서비스를 이용해서 서로 다른 구성요소들(PC 등)이 통신할 수 있는 프로그램 Java를 사용할 경우 JSP, Servlet을 사용한다 프로토콜(Protocol)과 IP 통신을 하기 위한 규약으로 HTTP, FTP, SMTP, POP 등이 있다 DNS 또는 Domain Name System : 사람이 읽을 수 있는 도메인 이름(예: www.naver.com)을 머신이 읽을 수 있는 IP 주소(예: 192.0.2.44)로 변환한 것이다 DNS를 사용함으로써 사용자는 네이버의 IP주소를 외우고 있을 필요가 없다!! 웹 프로그램의 동작 원리 정적 웹 페이지 서버에 미리 저장된 파일(HTML 파일 또는 이미지, JavaScript 등)이 그대로 전달되는 웹 페이지 서버는 사용자의 요청(.. 2020. 7. 4.
[Java] 네트워킹 (Socket, 양방향 통신) 네트워크 데이터 입력 및 출력 네트워크 대상(객체) 사이에 입/출력(InputStream, OutputStream)을 이용해서 데이터를 입력하고 출력한다 소켓(Socket) 네트워크상에서 데이터를 주고받기 위한 장치 서로 다른 겍체들간에 네트워크로 연결된 상태에서 입/출력을 하기 위한 장치를 소켓이라고 한다 Socket 클래스 서버는 클라이언트를 맞을 준비를 하고 있다가 클라이언트의 요청에 반응한다 import java.io.IOException; import java.net.ServerSocket; import java.net.Socket; public class MainClass { public static void main(String[] args) { ServerSocket serverSocket.. 2020. 7. 4.
[Java] 입력과 출력 입력/출력 이란? 다른 곳의 데이터를 가져오는 것을 입력, 다른 곳으로 데이터를 보내는 것을 출력이라고 한다 입/출력 기본 클래스 입/출력에 사용되는 기본 클래스는 1byte 단위로 데이터를 전송하는 InputStream, OutputStream이 있다 FileInputStream / FileOutputStream 파일에 데이터를 읽고/쓰기 위한 클래스로 read(), write() 메서드를 이용한다 FileInputStream read(); - 1byte씩 읽는다 read(byte[]); - [] 크기만큼 읽는다 FileOutputStream write(byte[] b); - 전체 쓰기 write(byte[], int off, int len); - off(시작점), len(길이) 파일 복사 import.. 2020. 7. 4.
[Java] 예외처리 Exception, Error (이것만 알면 된다!!) 예외란? 프로그램에 문제가 있는 것을 말하며, 예외로 인해 시스템 동작이 멈추는 것을 막는 것을 '예외처리'라고 한다 Exception - Error는 개발자가 대처할 수 있음 Error - Error는 개발자가 대처할 수 없음 (ex: 물리적인 에러) Exception Checked Exception: '예외처리'를 반드시 해야 하는 경우(네트워크, 파일 시스템 등) Unchecked Exception: '예외처리'를 개발자의 판단에 맞기는 경우(데이터 오류 등) Tip) Exception Handling 두개만 구분할 줄 알면 된다 1. RuntimeException: 예외처리를 하지 않는다 // How to? 로직으로 처리한다. 즉, 에러가 안나게끔 막아라! String name = null; Sy.. 2020. 7. 4.
[Java] Collections Interface 구현 Class 설명 List LinkedLIst Stack ArrayList 순서 ( O ) 중복 ( O ) Set HashSet TreeSet 순서 ( X ) 중복 ( X ) Queue LinkedList PriorityQueue 순서 ( O ) 중복 ( O ) Map HashTable HashMap TreeMap Key, Value 쌍, 순서 ( X ) Key 중복 ( X ), Value 중복 ( O ) List List는 인터페이스로 이를 구현한 클래스는 인덱스를 이용해서 데이터를 관리한다 특징 인덱스를 이용한다 데이터 중복이 가능하다 public static void main(String[] args) { // ArrayList 객체 생성 ArrayList list = new .. 2020. 7. 3.
[Java] 문자열 클래스(String, StringBuilder, StringBuffer) String 객체와 메모리 문자열을 다루는 String 클래스(객체)는 데이터가 변하면 메모리 상의 변화가 많아 속도가 느리다 String str = "JAVA"; str = str + "_8"; 문자열이 변경되면 기존의 객체를 버리고, 새로운 객체를 메모리에 생성된다 이때, 기존 객체는 GC에 의해서 메모리 회수가 이루어진다. 결과적으로 메모리의 효율성면에서 떨어진다고 볼 수 있다 클래스에서 객체를 생성할 때 new를 사용하지만, String은 기본 자료형처럼 간단하게 쓸 수 있다는 장점이 있다 StringBuffer, StringBuilder String 클래스의 단점을 보완한 클래스로 데이터가 변경되면 메모리에서 기존 객체를 재활용한다 StringBuffer sf = new StringBuffer(.. 2020. 7. 3.