우당탕탕 개발일지
61일차_과제 본문
Bean
Bean이란 자바의 객체와 같은 개념
Spring에서 굳이 Bean를 사용하는 이유는 동일한 역할을 수행하는 객체를 여러 번 만들지 않아도 되기 때문
즉, 싱글톤의 특징을 가지고 있다.
따라서 1번의 생성으로 동일한 메모리를 계속 재사용하기 때문에 메모리를 아낄 수 있다.
Bean 생성 방법 3가지
1. XML 환경설정 파일
<bean id="" class=""/>
2. XML 환경설정 파일
<context:component-scan base-package=""/>
@Component
3. JAVA 환경설정 파일
@Bean(name = "")
public 클래스 클래스명() {
return new 클래스;
}
* 해당 클래스에 @Component 필요없음
실습: 성적 계산
1. XML 파일에 Bean 등록
아래 실습 내용은 bean의 사용목적에 대한 올바른 예시는 아니다.
이번 실습에서는 arraylist를 bean으로 생성하는 것을 중심으로 봐야한다.
사용자는 다른 값을 넣었지만 마지막에 작성한 값으로 덮어쓰기 되었다.
그 이유는 싱글톤으로 DTO를 생성하였기 때문에이다...!
그래서 싱글톤 해제를 위해 scope="prototype" 속성을 추가한다.
최종
결과 화면
2. @Component 활용
Git Hub
https://github.com/ujin302/Spring2024/tree/main/stsWorkspace/Chapter02_XML/src/sample04
https://github.com/ujin302/Spring2024/tree/main/stsWorkspace/Chapter02_ANNO/src/main/java/sample04