๐ ์ค๋์ ํ์ต ํค์๋
- Bean
๐ฅ Bean
Bean : Spring์ด ๊ด๋ฆฌํ๋ ๊ฐ์ฒด
Spring IoC ์ปจํ ์ด๋ : 'Bean'์ ๋ชจ์๋ ์ปจํ ์ด๋
โ๏ธ
Bean ๋ฑ๋ก ๋ฐฉ๋ฒ
@Component
- Bean์ผ๋ก ๋ฑ๋กํ๊ณ ์ ํ๋ ํด๋์ค ์์ ์ค์ ํฉ๋๋ค.
@Component
public class MemoService { ... }
Spring ์๋ฒ๊ฐ ๋ฐ ๋ IoC ์ปจํ ์ด๋์ 'Bean'์ ์ ์ฅํด ์ค๋๋ค.
- @Component๊ฐ ์ค์ ๋ ํด๋์ค์ ๋ํด Spring์ด ํด์ฃผ๋ ์ผ ํ์ธํ๊ธฐ
// 1. MemoService ๊ฐ์ฒด ์์ฑ
MemoService memoService = new MemoService();
// 2. Spring IoC ์ปจํ
์ด๋์ Bean (memoService) ์ ์ฅ
// memoService -> Spring IoC ์ปจํ
์ด๋
Spring Bean ์ด๋ฆ : ํด๋์ค์ ์๊ธ์๋ง ์๋ฌธ์๋ก ๋ณ๊ฒฝ๋จ.
public class MemoService -> memoservice
๐ฅ Spring Bean ์ฌ์ฉ ๋ฐฉ๋ฒ
@Autowired
- ํ๋ ์์ @Autowired
@Component
public class MemoService {
@Autowired
private MemoRepository memoRepository;
// ...
}
Spring์์ IoC ์ปจํ ์ด๋์ ์ ์ฅ๋ memoRepository 'Bean'์ ํด๋น ํ๋์ DI ์ฆ, ์์กด์ฑ์ ์ฃผ์ ํด ์ค๋๋ค.
๐ ์ค๋์ ํ๊ณ
Bean.. ์ปคํผ์ฝฉ..