본문 바로가기

Web/Spring

스프링 XML

스프링 컨테이너에 클래스를 등록하면 스프링이 클래스의 인스턴스를 관리한다.

→ 직접 new 연산자를 이용해서 인스턴스를 생성했던 작업을 스프링에 위임할 수 있다.

→ 소스 코드 상에서는 인스턴스 생성에 대한 부분은 신경 쓰지 않고 개발할 수 있다.

 

빈(Bean)

- 스프링이 IoC 방식으로 관리하는 오브젝트 (스프링이 직접 생성과 제어를 담당한다.)

빈 팩토리(BeanFactory)

- 스프링이 IoC를 담당하는 핵심 컨테이너

- Bean을 등록, 생성, 조회, 반환하는 기능 담당

- 일반적으로 BeanFactory를 바로 사용하지 않고, 이를 확장한 ApplicationContext를 이용한다.

어플리케이션 컨텍스트(Application Context)

- BeanFactory를 확장한 IoC 컨테이너

 

스프링 컨테이너에 빈(bean)을 등록하는 방법

1. XML

<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://www.springframework.org/schema/beans"
	xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
	xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans.xsd">

	<bean id="XXX" class="XXXXXXX"></bean>
</beans>

1line: XML 선언

2line: xsd 파일 선언 - bean 태그를 사용하기 위해서는 spring-beans.xsd  파일이 필요하다.

<bean id="XXX" class="XXXXXXX"></bean>
<bean id="XXX" class="XXXXXXX" scope="XXXXXXXXXXX"></bean>

id: 참조에 사용할 값 (클래스명의 소문자 형태)

class: 실제 클래스 파일 경로

scope: default는 싱글톤. prototype으로 할 경우 쓸 때마다 새로 만든다.

 

2. Annotation

Stereotype annotation: 빈 자동등록에 사용하는 annotation

- @Repository

- @Service

- @Controller

- @Component

'Web > Spring' 카테고리의 다른 글

FIle Upload  (1) 2021.05.06
Spring에서 swagger 쓰기 위해  (0) 2021.05.04
Spring에서 JSP 쓰기 위해  (0) 2021.05.04
MyBatis  (0) 2021.05.01
@Qualifier  (0) 2021.04.30