JAVA 89

[JSP] 서블릿 Life Cycle 이란?

서블릿의 라이프사이클은 서블릿이 생성되고 초기화된 후 요청을 처리하고 종료되기까지의 생명 주기를 의미한다. 서블릿 라이프사이클을 이해하면 서블릿이 웹 애플리케이션에서 어떻게 동작하는지 파악하기 위해 학습해야 한다. 사전 기반 지식 서블릿 라이프사이클 단계💡 서블릿 라이프사이클은 서블릿이 생성되고, 요청을 처리하며, 소멸되는 전체 과정입니다. 서블릿의 생명 주기는 세 가지 주요 메서드인 init(), service(), destroy() 로 구성된다.클래스 로딩 (Class Loading)인스턴스 생성 (Instantiation)초기화 (Initialization)요청 처리 (Request Processing)종료 (destroy) 1. 클래스 로딩 (Class Loading)설명: 서블릿 컨테이너는 서..

[JSP] 서블릿이란?

서블릿(Servlet)은 자바 언어로 작성된 서버 측 컴포넌트로, 웹 애플리케이션에서 클라이언트의 HTTP 요청을 처리하고 동적인 웹 페이지를 생성하여 응답하는 역할을 한다. 서블릿은 Java EE (Enterprise Edition) 사양의 일부로, 주로 HTML 페이지를 생성하고 데이터베이스와 연동하여 데이터를 처리하는 데 사용된다. ❗컴포넌트란?여기서 "컴포넌트"라는 개념은 독립적으로 작동할 수 있는 소프트웨어의 작은 단위이다. 서블릿은 웹 서버에서 독립적으로 실행되며, 클라이언트의 요청을 처리하고 응답을 생성하는 역할을 한다.예를 들어, 데스크톱 프로그램이나 모바일 앱에 사용되는 메뉴바, 툴바, 본문 영역 등이 각각의 컴포넌트로 볼 수 있다.  서블릿의 역할HTTP 요청 처리서블릿은 클라이언트로부..

[JSP] 아파치 톰캣 시작과 폴더 구조 확인

[Tomcat 설치 폴더] ├── bin # 실행 가능한 스크립트 및 실행 파일 ├── conf # 구성 파일 ├── lib # 톰캣 및 웹 애플리케이션에 필요한 라이브러리 ├── logs # 로그 파일 ├── temp # 임시 파일 ├── webapps # 웹 애플리케이션 파일 (WAR 파일 및 압축 풀린 애플리케이션) └── work # JSP 컴파일된 파일 및 임시 데이터 저장소bin (바이너리): 실행 가능한 스크립트 및 실행 파일이 포함된 곳. 여기에는 톰캣을 시작하고 중지하는 스크립트 등이 있다.conf (구성): 구성 파일이 있는 곳..

[JSP] WAS와 웹 컨테이너의 역할

💡WAS와 웹 컨테이너에 대한 개념을 알아 보자. 웹 컨테이너가 하는 일을 살펴 보자. 웹 컨테이너란? 웹 컨테이너는 WAS의 일부로, 서블릿과 JSP를 실행하고 관리하는 역할을 한다.웹 컨테이너는 웹 애플리케이션의 요청과 응답을 처리하며, 서블릿과 JSP의 라이프사이클을 관리한다.서블릿 코드 살펴 보기import java.io.IOException;import javax.servlet.ServletException;import javax.servlet.annotation.WebServlet;import javax.servlet.http.HttpServlet;import javax.servlet.http.HttpServletRequest;import javax.servlet.http.HttpServle..

[JSP] 웹 서버와 웹 애플리케이션 서버(WAS)

💡1웹 서버에 대한 개념을 이해하자. 2. 웹 애플리케이션 서버(WAS) 대한 개념을 알자. 웹 서버란? - 정적 콘텐츠 제공자 웹 서버는 클라이언트(주로 웹 브라우저)로부터 HTTP 요청을 받아 정적인 HTML 파일, 이미지, CSS 파일 등을 제공하는 서버. 웹 서버는 요청된 리소스를 클라이언트에게 그대로 반환한다. 웹 서버는 일반적으로 특정 폴더(웹 루트 디렉토리)에 정적 콘텐츠를 저장한다. 클라이언트의 요청이 들어오면, 웹 서버는(컴퓨터) 이 폴더에서 요청된 파일을 찾아서 클라이언트에게 전달한다. 가장 유명한 웹 서버로는 아파치 HTTP 서버(Apache HTTP Server)와 Nginx가 있다.도서관에서 사서에게 특정 책을 요청하면, 사서는 책장에 있는 책을 찾아서 여러분에게 그대로 전달합니..

파싱이란 뭘까?(JSON 파싱 )

💡 파싱(Parsing)이란컴퓨터 과학에서 입력된 데이터를 해석하고 구조화하는 과정을 의미합니다. 일반적으로 파싱은 텍스트 데이터를 특정 형식으로 변환하거나, 텍스트 데이터에서 유용한 정보를 추출하는 데 사용됩니다. 파싱을 통해 원시 데이터를 컴퓨터가 이해하고 처리할 수 있는 구조로 변환할 수 있습니다. 파싱의 주요 개념 구문 분석(Syntax Analysis):텍스트 데이터를 구문 규칙에 따라 해석하는 과정이다.주로 프로그래밍 언어의 컴파일러나 인터프리터에서 소스 코드를 구문 트리(Syntax Tree)로 변환할 때 사용된다.데이터 형식 변환:텍스트 데이터를 특정 형식(예: JSON, XML)으로 변환하여 구조화된 데이터를 생성한다.예를 들어, JSON 형식의 문자열을 자바 객체로 변환하거나, XML..

JAVA 2024.06.07

[JAVA] 네트워크 프로토콜

네트워크 프로토콜이란? 네트워크 프로토콜은 네트워크에서 데이터를 교환하기 위한 규칙과 절차의 집합이다.프로토콜은 데이터 형식, 순서, 오류 제어 등을 정의하여 서로 다른 시스템 간의 통신을 가능하게 한다. 주요 프로토콜 HTTP (HyperText Transfer Protocol): 웹 페이지를 전송하기 위한 프로토콜이다.TCP (Transmission Control Protocol): 신뢰성 있는 데이터 전송을 보장하는 프로토콜이다.UDP (User Datagram Protocol): 신뢰성보다는 빠른 전송을 중시하는 프로토콜이다.FTP (File Transfer Protocol): 파일 전송을 위한 프로토콜이다.SMTP: 이메일 전송을 위한 프로토콜이다. 프로토콜 각기 다른 목적을 가지고 있습니다 C..

JAVA 2024.05.24

[JAVA] 1: N 소켓 양방향 통신

1:N 소켓 양방향 통신에서는 하나의 서버가 여러 클라이언트와 동시에 양방향 통신을 할 수 있습니다. 이는 채팅 애플리케이션, 멀티플레이어 게임 서버 등에서 흔히 사용된다.  필요 개념 서버와 클라이언트 소켓:서버는 하나의 ServerSocket을 통해 여러 클라이언트의 연결 요청을 기다립니다.클라이언트는 각각의 Socket을 통해 서버에 연결을 요청하고, 연결된 후 서버와 통신합니다.멀티스레딩:서버는 각 클라이언트와의 통신을 별도의 스레드에서 처리합니다. 이를 통해 여러 클라이언트와 동시에 통신할 수 있습니다.각 클라이언트는 서버와의 통신을 처리하는 자체 스레드를 가집니다.동기화 및 자원 관리:여러 스레드가 동시에 데이터를 읽고 쓸 수 있으므로, 데이터의 일관성을 유지하기 위한 동기화가 필요합니다.서버..

JAVA 2024.05.24