Spring Framework(182)
-
Maven Build System
개요메이븐은 프로젝트 객체 모델(Project Object Model)이라는 개념을 바탕으로 프로젝트 의존성 관리, 라이브러리 관리, 프로젝트 생명 주기 관리 기능 등을 제공하는 프로젝트 관리 도구입니다. 또한 플러그인을 기반으로 소스 코드로부터 배포 가능한 산출물을 만들어 내는 빌드 기능 뿐만 아니라 리포팅 및 documentation 작성 기능 등을 제공합니다. 설명Maven 특징Maven 장점Maven 단점 • 뛰어난 의존성 관리- 의존성 자동 업데이트-저장소를 통한 라이브리 일괄 관리 • Repository 관리의 불편함- Maven 프로젝트의 급속한 발전으로 central repository가 제공하는 라이브러리들이빠르게 증가하고 있으나 아직 3rd 파티 라이브러 등 미제공 라이브러리들이 있음..
2023.05.01 -
AJP (Apache JServ Protocol) Connector
AJP (Apache JServ Protocol) Connector는 Apache Tomcat 서버와 Apache HTTP 서버 같은 웹 서버 간의 빠르고 효율적인 통신을 위한 바이너리 프로토콜로, 로드 밸런싱과 클러스터링 환경에서 주로 사용됩니다. 이 프로토콜은 HTTP보다 빠르고 효율적이며, 네트워크 오버헤드를 줄여 성능을 향상시키는 데 중요한 역할을 합니다.Apache Tomcat 서버와 Apache Http 서버는 별개의 서버입니다. Apache Tomcat 서버를 흔히, Tomcat 서버라 합니다. 이 두 서버는 성격이 다릅니다. Tomcat 서버는 동적 웹 페이지를 호스팅하는 부분에 더 특화(물론 정적 웹 페이지도 호스팅할 수 있음)되어 있는 반면, Apache Http 서버는 정적 웹 페이지..
2023.04.28 -
Bean Definition Inheritance
빈 정의(Bean Defintion)는 컨스트럭터 아규먼트, 속성 값, 그리고 초기화 메서드나 정적 팩토리 메서드 이름과 같은 컨테이너별 정보를 포함하는 많은 구성 정보를 포함할 수 있습니다. 자식 빈 정의는 부모 정의의 구성 데이터를 상속받을 수 있습니다. 자식 정의는 필요한 경우 일부 값을 재정의하거나 다른 값을 추가할 수 있습니다. 부모와 자식 빈 정의를 사용하면 입력해야 할 내용을 많이 줄일 수 있으며, 이는 일종의 템플릿 기능으로 효과적으로 작용합니다. 만약 프로그래밍 방식으로 ApplicationContext 인터페이스를 사용한다면, 자식 빈 정의는 ChildBeanDefinition 클래스로 표현됩니다. 대부분의 사용자는 이 레벨에서 작업하지 않으며, 대신 ClassPathXmlApplica..
2023.04.28 -
Container Overview
🌿 Spring IoC 컨테이너Spring Framework의 핵심은 객체의 생성과 조립을 외부에서 관리하는 IoC (Inversion of Control) 컨테이너입니다. 본 포스트에서는 Spring IoC 컨테이너의 개요, 다양한 구성 방식, 설정 메타데이터, 그리고 실제 사용법까지 다룹니다. 🔍 1. 🧠 Spring IoC 컨테이너란?Spring에서 IoC 컨테이너는 ApplicationContext 인터페이스를 통해 구현되며, 다음 역할을 담당합니다:객체(Bean) 생성 및 구성의존성 주입(Dependency Injection)Bean 간의 관계 조립ApplicationContext context = new ClassPathXmlApplicationContext("services.xml", ..
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(Server Applet)서블릿(Servlet) 자체는 웹 애플리케이션의 구성 요소 중 하나입니다. 웹 애플리케이션은 클라이언트의 요청에 대한 동적인 처리를 위해 서버상에서 실행되는 애플리케이션을 말하며, 서블릿은 그 중에서 Java를 사용하여 웹 서버에서 실행되는 프로그램입니다.서블릿은 HTTP 요청을 받아 처리하고, 그 결과를 웹 브라우저로 다시 전송(응답)하는 역할을 합니다. 이는 HTML, XML 등의 형태로 응답을 생성하여 클라이언트(보통 웹 브라우저)에 전달합니다. 서블릿은 Java EE(Enterprise Edition) 스펙의 일부이며, JSP(JavaServer Pages), JSF(JavaServer Faces)와 같은 다른 Java 웹 기술과 함께 웹 애플리케이션의 백엔..
2023.04.17