์คํ๋ง ๋น3 Spring - ์คํ๋ง ์ปจํ ์ด๋์ ๋ฑ๋ก๋ ๋ชจ๋ ๋น ์กฐํ //ApplicationContextInfoTest.java package hello.core.beanfind; import hello.core.AppConfig; import org.junit.jupiter.api.DisplayName; import org.junit.jupiter.api.Test; import org.springframework.beans.factory.config.BeanDefinition; import org.springframework.context.annotation.AnnotationConfigApplicationContext; class ApplicationContextInfoTest { AnnotationConfigApplicationContext ac = new Anno.. 2023. 7. 9. Spring - ์คํ๋ง ์ปจํ ์ด๋ ์์ฑ //์คํ๋ง ์ปจํ ์ด๋ ์์ฑ ApplicationContext applicationContext = new AnnotationConfigApplicationContext(AppConfig.class); ApplicationContext๋ ์คํ๋ง ์ปจํฐ์ด๋์ด์, ์ธํฐํ์ด์ค์ด๋ค. ์คํ๋ง ์ปจํ ์ด๋๋ XML์ ๊ธฐ๋ฐ์ผ๋ก ๋ง๋ค ์ ์๊ณ , ์ ๋ ธํ ์ด์ ๊ธฐ๋ฐ์ ์๋ฐ ์ค์ ํด๋์ค๋ก ๋ง๋ค ์ ์๋ค. ์ฐธ๊ณ : ๋ ์ ํํ๋ ์คํ๋ง ์ปจํ ์ด๋๋ฅผ ๋ถ๋ฅผ ๋ BeanFactory , ApplicationContext ๋ก ๊ตฌ๋ถํด์ ์ด์ผ๊ธฐํ๋ค. BeanFactory ๋ฅผ ์ง์ ์ฌ์ฉํ๋ ๊ฒฝ์ฐ๋ ๊ฑฐ์ ์์ผ๋ฏ๋ก ์ผ๋ฐ์ ์ผ๋ก ApplicationContext ๋ฅผ ์คํ๋ง ์ปจํ ์ด๋๋ผ ํ๋ค. 1. ์คํ๋ง ์ปจํ ์ด๋ ์์ฑ new AnnotationConfigAppl.. 2023. 7. 9. Spring - ์คํ๋ง ๋น๊ณผ ์์กด๊ด๊ณ1 ์ปดํฌ๋ํธ ์ค์บ๊ณผ ์๋ ์์กด๊ด๊ณ ์ค์ ์์ฑ์์ @Autowired ๊ฐ ์์ผ๋ฉด ์คํ๋ง์ด ์ฐ๊ด๋ ๊ฐ์ฒด๋ฅผ ์คํ๋ง ์ปจํ ์ด๋์์ ์ฐพ์์ ๋ฃ์ด์ค๋ค. ์ด๋ ๊ฒ ๊ฐ์ฒด ์์กด๊ด๊ณ๋ฅผ ์ธ๋ถ์์ ๋ฃ์ด์ฃผ๋ ๊ฒ์ DI (Dependency Injection), ์์กด์ฑ ์ฃผ์ ์ด๋ผ ํ๋ค. ์ด์ ํ ์คํธ์์๋ ๊ฐ๋ฐ์๊ฐ ์ง์ ์ฃผ์ ํ๊ณ , ์ฌ๊ธฐ์๋ @Autowired์ ์ํด ์คํ๋ง์ด ์ฃผ์ ํด์ค๋ค. ์ฐธ๊ณ : helloController๋ ์คํ๋ง์ด ์ ๊ณตํ๋ ์ปจํธ๋กค๋ฌ์ฌ์ ์คํ๋ง ๋น์ผ๋ก ์๋ ๋ฑ๋ก๋๋ค. @Controller ๊ฐ ์์ผ๋ฉด ์๋ ๋ฑ๋ก๋จ ์คํ๋ง ๋น์ ๋ฑ๋กํ๋ 2๊ฐ์ง ๋ฐฉ๋ฒ ์ปดํฌ๋ํธ ์ค์บ๊ณผ ์๋ ์์กด๊ด๊ณ ์ค์ ์๋ฐ์ฝ๋๋ก ์ง์ ์คํ๋ง ๋น ๋ฑ๋กํ๊ธฐ 2023. 7. 4. ์ด์ 1 ๋ค์