본문 바로가기
코딩 공부/web & Java

[Spring] Spring Bean

by 현장 2023. 10. 1.

Spring Bean

Spring IoC 컨테이너가 관리하는 자바 객체를 빈(Bean)이라고 부릅니다.

IOC 
사용자는 객체를 직접 생성하지 않고, 객체의 생명주기를 컨트롤하는 주체는 다른 주체가 됩니다. 즉, 사용자의 제어권을 다른 주체에게 넘기는 것을 IOC(제어의 역전) 라고 합니다.

 

Java Bean과 차이점

1. Java Bean

  • getter / setter
  • public의 no-argument 생성자
  • 모든 필드는 private로 getter와 setter를 통해서만 접근 가능
public class Payment {
	private String paymentCode;
	private int price
	
	public String getPaymentCode() {
		return paymentCode;
	}
	public void setPaymentCode(String paymentCode) {
		this.paymentCode = paymentCode;
	}
			
	public int getPrice() {
		return userAddrDesc;
	}
	public void setPrice(int price) {
		this.userAddrDesc = userAddrDesc;
	}
		
}

위와 같이 DTO와 비슷합니다.

 

2. Spring Bean

Spring Bean은 IoC 컨테이너에서 관리되기 때문에, IoC 컨테이너에 등록을 해야 사용할 수 있게 됩니다.

 

- 등록 방법

  • xml 파일
  • 어노테이션
@Configuration
public class HelloWorldConfiguration {
    // Spring Bean(Spring에서 관리하는 것들을 의미) 정의 가능

    @Bean
    public String name() {
        return "Tester";
    }

    @Bean
    public int age() {
        return 28;
    }

    @Bean
    public Person person() {
        return new Person("Hyeon", 25, new Address("kirin", "junju"));
    }

    @Bean
    public Person person3Parameters(String name, int age, Address address3) {
        return new Person(name, age, address3);
    }

    @Bean
    public Address address() {
        return new Address("sinsa", "seoul");
    }
}

 

'코딩 공부 > web & Java' 카테고리의 다른 글

[Spring] 지연 초기화  (0) 2023.10.04
[Spring] @Component와 @Bean의 차이  (1) 2023.10.02
HTTP multipart/form-data  (0) 2023.06.29
[Web] HTTP 통신과 Socket 통신  (0) 2023.06.21
[Java] AssertJ  (0) 2023.05.18