Spring Framework(138)
-
Bean Definition Inheritance
빈 정의는 생성자 아규먼트, 속성 값, 그리고 초기화 메서드나 정적 팩토리 메서드 이름과 같은 컨테이너별 정보를 포함하는 많은 구성 정보를 포함할 수 있습니다. 자식 빈 정의는 부모 정의의 구성 데이터를 상속받을 수 있습니다. 자식 정의는 필요한 경우 일부 값을 재정의하거나 다른 값을 추가할 수 있습니다. 부모와 자식 빈 정의를 사용하면 입력해야 할 내용을 많이 줄일 수 있으며, 이는 일종의 템플릿 기능으로 효과적으로 작용합니다. 만약 프로그래밍 방식으로 ApplicationContext 인터페이스를 사용한다면, 자식 빈 정의는 ChildBeanDefinition 클래스로 표현됩니다. 대부분의 사용자는 이 수준에서 작업하지 않으며, 대신 ClassPathXmlApplicationContext와 같은 클래..
2023.04.28 -
Introduction to the Spring IoC Container and Beans, Container Overview
[참조: The IoC Container] Introduction to the Spring IoC Container and Beans이 장에서는 Inversion of Control (IoC) 원칙의 Spring Framework 구현에 대해 다룹니다. 의존성 주입 (Dependency Injection, DI)은 IoC의 특수한 형태로, 객체가 자신이 작업하는 다른 객체들을 생성자 아규먼트, 팩토리 메서드의 아규먼트, 또는 객체 인스턴스가 생성되거나 팩토리 메서드에서 리턴된 후에 설정되는 속성을 통해서만 정의하는 방법입니다. IoC 컨테이너는 빈을 생성할 때 이러한 의존성을 주입합니다. 이 과정은 본질적으로 빈 자체가 클래스의 직접 생성 또는 서비스 로케이터 패턴과 같은 메커니즘을 사용하여 자신의 의존..
2023.04.25 -
Realm
Apache Tomcat 서버에서 **Realm**은 사용자의 인증 및 권한 부여를 처리하는 중요한 구성 요소입니다. Realm은 애플리케이션에서 사용자 이름, 비밀번호, 역할 등의 정보를 저장하고 이를 통해 웹 애플리케이션의 보안 제어를 제공합니다. 즉, **Realm**은 인증(authentication)과 권한 부여(authorization)를 구현하는데 사용됩니다. ## Apache Tomcat의 Realm 개요 Tomcat 서버는 자바 서블릿과 JSP(JavaServer Pages)를 실행할 수 있는 컨테이너입니다. 이 컨테이너는 애플리케이션에 대한 접근을 제어하기 위해 인증 및 권한 부여 메커니즘이 필요하며, Realm은 이 역할을 담당합니다. Realm은 보통 사용자 데이터베이스와 상호작용..
2023.04.25 -
Servlet
Servlet서블릿(Servlet) 자체는 웹 애플리케이션의 구성 요소 중 하나입니다. 웹 애플리케이션은 클라이언트의 요청에 대한 동적인 처리를 위해 서버상에서 실행되는 애플리케이션을 말하며, 서블릿은 그 중에서 Java를 사용하여 웹 서버에서 실행되는 프로그램입니다.서블릿은 HTTP 요청을 받아 처리하고, 그 결과를 웹 브라우저로 다시 전송(응답)하는 역할을 합니다. 이는 HTML, XML 등의 형태로 응답을 생성하여 클라이언트(보통 웹 브라우저)에 전달합니다. 서블릿은 Java EE(Enterprise Edition) 스펙의 일부이며, JSP(JavaServer Pages), JSF(JavaServer Faces)와 같은 다른 Java 웹 기술과 함께 웹 애플리케이션의 백엔드 로직을 구현하는 데 사용..
2023.04.17 -
Coyote Connector
Coyote Connector는 Apache Tomcat 서버의 핵심 구성 요소 중 하나로, 클라이언트(주로 웹 브라우저)로부터 요청을 받아 이를 처리하고 응답을 전송하는 기능을 수행합니다. Coyote는 Tomcat 서버가 HTTP 및 다른 프로토콜을 통해 요청을 처리할 수 있도록 해주는 커넥터(Connector) 역할을 합니다.Coyote Connector의 주요 특징과 역할HTTP(S) 요청 및 응답 처리:Coyote는 클라이언트로부터 HTTP(S) 요청을 수신하고, 이를 Tomcat의 내부 엔진(서블릿 컨테이너)으로 전달합니다. 서블릿 컨테이너는 해당 요청을 분석하고 적절한 서블릿을 호출하여 처리를 수행한 후, 처리 결과를 HTTP 응답으로 변환하여 클라이언트에 다시 전송합니다.다양한 프로토콜 지..
2023.04.17 -
Valve
아파치 톰캣(Apache Tomcat) 서버에서 밸브(Valve)는 요청(Request)과 응답(Response)을 처리하는 파이프라인의 중요한 구성 요소로, 주로 HTTP 요청과 관련된 로깅, 인증, 접근 제어, 요청/응답 변경과 같은 특정 작업을 처리하는 역할을 합니다. 밸브는 톰캣의 코어 컴포넌트 중 하나로, 톰캣 내부의 여러 컨테이너(Container) 레벨에서 적용할 수 있으며 주로 호스트(Host) 또는 엔진(Engine) 레벨에서 설정됩니다.밸브의 개념 및 역할밸브는 톰캣의 Pipeline 구조 안에서 동작하며, 필터(filter)와 유사하지만, 차이점은 밸브는 톰캣 내부의 특정 단계에서만 동작하고, HTTP 요청이 톰캣 내부로 들어와 서블릿(Servlet) 컨테이너로 전달되기 전에 수행된다..
2023.04.13