전체글(69)
-
AP Server와 WAS의 관계
1. 웹 서버 (Web Server)웹 서버는 HTTP 요청을 받아서 클라이언트에게 정적 콘텐츠(HTML, CSS, 이미지 등)를 제공하는 서버입니다.웹 서버는 웹 브라우저에서 요청한 자원(웹 페이지, 이미지 등)을 처리하고 응답을 반환합니다.웹 서버는 동적 콘텐츠 처리(예: 서버에서 데이터베이스 쿼리 실행 후 결과를 웹 페이지로 렌더링)에는 제한이 있어 보통 애플리케이션 서버에 요청을 전달합니다.Apache HTTP Server, Nginx2. 웹 애플리케이션 서버 (Web Application Server, WAS)웹 애플리케이션 서버는 HTTP 요청을 처리와 같은 웹 서버의 역할을 포함하면서, 동적 콘텐츠 처리를 할 수 있는 서버입니다.즉, 웹 애플리케이션에서 서블릿(Servlet)이나 JSP와 같..
2024.12.05 -
3계층형 아키텍처 - 웹 데이터 흐름
1. 클라이언트(프레젠테이션 계층)사용자가 직접 상호작용하는 인터페이스.사용자가 브라우저(또는 모바일 앱)를 통해 웹 서버에 요청을 보냄. (HTTP/HTTPS 통신 프로토콜 사용)브라우저는 요청을 보낼 때 필요한 데이터를 포함해 보냄(쿠키, 헤더 등). 2. 웹 서버와 애플리케이션 서버 (애플리케이션 계층)클라이언트의 요청은 웹 서버로 전달된 뒤, 필요한 작업에 따라 애플리케이션 서버로 전달됩니다.(1) 웹 서버(Web Server)역할: HTTP 요청을 처리하고 정적 리소스(HTML, CSS, JS 파일 등)를 클라이언트에 바로 제공.정적 리소스 요청이라면 웹 서버가 자체적으로 처리하고 응답.예: 사용자가 이미지를 요청할 경우, 웹 서버가 이미지 파일을 찾아 응답.(2) 애플리케이션 서버(Applic..
2024.12.05 -
객체 지향 설계와 스프링
객체 지향 설계와 스프링 1. 스프링이란?로드존슨이 EJB 컨테이너의 문제점을 지적하며 새롭게 등장한 기술스프링은 여러 핵심기술, 웹기술, 데이터접근기술, 기술통합, 테스트 등을 제공 스프링이라는 단어는 문맥에 따라 다르게 사용된다스프링 DI 컨테이너 기술스프링 프레임워크스프링 생태계 (스프링, 스프링 부트 등등 모두 포함) 2. 스프링의 핵심개념 (왜 만들어졌나?)스프링은 자바 언어 기반의 프레임워크자바 언어의 가장 큰 특징은 객체 지향 언어 스프링은 객체 지향 언어가 가진 강력한 특징을 살려내는 프레임워크즉, 스프링은 좋은 객체 지향 애플리케이션을 개발할 수 있게 도와주는 프레임워크 3. 객체 지향 프로그래밍 객체 지향 프로그래밍은 컴퓨터 프로그램을 '객체'들의 모임으로 파악하고자 하는 것이다. 각각..
2024.11.28 -
자바 플랫폼 (Java Platform)
자바 플랫폼 (Java Platform)자바 플랫폼은 자바 프로그램이 실행될 수 있는 환경을 의미하는데, JVM(Java Virtual Machine), 자바 API, 자바 실행 환경(JRE) 등으로 구성됩니다. 즉, 자바 플랫폼은 자바 애플리케이션이 실행될 수 있도록 지원하는 모든 요소들이 모여 있는 시스템을 말합니다.플랫폼 독립성: 자바는 "한 번 작성, 어디서나 실행"이라는 원칙을 가지고 있습니다. 즉, 자바 프로그램을 개발할 때 운영 체제나 하드웨어와 관계없이 동일하게 실행될 수 있습니다. 이는 자바 바이트 코드가 JVM을 통해 실행되기 때문에 가능합니다.JVM의 역할: JVM은 각 운영 체제에 맞는 구현체가 존재하여, 자바 바이트 코드를 해당 운영 체제에 맞는 기계어로 변환합니다. 이렇게 하면 ..
2024.11.27 -
JVM, JRE, JDK
1. JVM (Java Virtual Machine)JVM은 자바 애플리케이션을 실행하는 가상 머신입니다. 자바 소스 코드를 컴파일한 후 생성된 바이트 코드(.class 파일)를 실제로 실행하는 역할을 합니다. JVM은 자바 코드가 플랫폼 독립적으로 실행되게 만드는 핵심 요소입니다.역할: 자바 프로그램이 운영 체제에 독립적으로 실행될 수 있도록 하는 가상 환경을 제공합니다.주요 기능:바이트 코드 실행: 자바 소스 코드가 컴파일되어 생성된 바이트 코드를 실행합니다.메모리 관리: JVM은 힙(heap)과 스택(stack) 영역을 관리하고, 가비지 컬렉션(Garbage Collection)을 통해 메모리 관리를 자동으로 수행합니다.호환성 유지: 자바는 "Write Once, Run Anywhere"라는 슬로건..
2024.11.27 -
자바 프로그램 실행 과정
Test.java (자바 소스 코드)사람이 이해할 수 있는 형태의 코드자바로 작성된 원시 코드javac.exe (자바 컴파일러)자바 컴파일러는 .java 파일을 받아들여 바이트 코드인 .class 파일로 변환합니다.이때, 자바는 소스 코드를 바이트 코드로 변환하여 플랫폼에 독립적인 형태로 만듭니다.컴파일 단계에서는 소스 코드를 바이트 코드로 변환하는 작업만 이루어집니다.이때, 에러가 있으면 컴파일러가 오류 메시지를 출력합니다.Test.class (자바 바이트 코드).class 파일은 자바 바이트 코드가 저장된 파일입니다.자바 바이트 코드는 JVM(Java Virtual Machine)에서 실행될 수 있도록 변환된 코드입니다.이 바이트 코드는 운영 체제나 하드웨어에 의존하지 않기 때문에 "플랫폼 독립적"이..
2024.11.27