MapleStory Cookie With Halo

๐Ÿƒ Spring/๐Ÿƒ Spring Boot

[SpringBoot]์Šคํ”„๋ง ๋นˆ ๋“ฑ๋ก:2.์ž๋ฐ”์ฝ”๋“œ

๋‰ด์ด NUEY 2025. 1. 6. 22:21
๋ฐ˜์‘ํ˜•

 

โ€ป ์ด์ „ ํŽธ : 2025.01.06 - [๐Ÿƒ Spring/๐Ÿƒ Spring Boot] - [SpringBoot]์Šคํ”„๋ง ๋นˆ ๋“ฑ๋ก:1.์ปดํฌ๋„ŒํŠธ ์Šค์บ”๊ณผ ์ž๋™ ์˜์กด๊ด€๊ณ„ ์„ค์ •

 


 

์ž๋ฐ”์ฝ”๋“œ๋ฅผ ์ ์–ด ์Šคํ”„๋ง ๋นˆ์„ ๋“ฑ๋กํ•ด๋ณด์ž.

 

  1. ์„œ๋น„์Šค์™€ ๋ฆฌํฌ์ง€ํ† ๋ฆฌ์˜ @Service @Repository @Autowired ์–ด๋…ธํ…Œ์ด์…˜์„ ๋ชจ๋‘ ์ง€์›Œ์ค€๋‹ค.

  2. main์— SpringConfigํด๋ž˜์Šค๋ฅผ ๋งŒ๋“ ๋‹ค.
  3. SpringConfig ์ฝ”๋“œ

    1. @Configuration ์–ด๋…ธํ…Œ์ด์…˜์„ ํด๋ž˜์Šค ์œ„์— ์ ๋Š”๋‹ค.

    2. @Bean ์–ด๋…ธํ…Œ์ด์…˜์„ ์„œ๋น„์Šค์™€ ๋ฆฌํฌ์ง€ํ† ๋ฆฌ ๋ฉ”์„œ๋“œ์— ์ ์–ด์ค€๋‹ค.

์ปจํŠธ๋กค๋Ÿฌ๋Š” ๊ทธ๋Œ€๋กœ ์–ด๋…ธํ…Œ์ด์…˜ @Controller์™€ @Autowired๊ฐ€ ํ•„์š”ํ•˜๋‹ค.

 

config ์ „์ฒด์ฝ”๋“œ

๋”๋ณด๊ธฐ
package hello.hellospring;

import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;

import hello.hellospring.repository.MemberRepository;
import hello.hellospring.repository.MemoryMemberRepository;
import hello.hellospring.service.MemberService;

@Configuration
public class SpringConfig {

    @Bean
    public MemberService memberService() {
        return new MemberService(memberRepository());
    }

    @Bean
    public MemberRepository memberRepository() {
        return new MemoryMemberRepository();
    }
}

 

DI
์˜์กด์„ฑ ์ฃผ์ž…
์„ธ๊ฐ€์ง€ ๋ฐฉ๋ฒ•

 

  1. ์ƒ์„ฑ์ž ์ฃผ์ž… 
    ๐ŸŒŸ ๊ถŒ์žฅ๋˜๋Š” ๋ฐฉ๋ฒ•
  2. ํ•„๋“œ ์ฃผ์ž…
    โ€ป ๋ณ„๋กœ ์ข‹์€ ๋ฐฉ๋ฒ•์€ ์•„๋‹ˆ๋‹ค.
  3. ์„ธํ„ฐ ์ฃผ์ž…
    โ€ป public์„ ์‚ฌ์šฉํ•ด์•ผ ํ•˜๊ธฐ ๋•Œ๋ฌธ์— ๋‹ค๋ฅธ ๊ณณ์—์„œ ๋ณ€๊ฒฝ ๊ฐ€๋Šฅํ•˜๋Š” ๋‹จ์ ์ด ์žˆ๋‹ค.

โ€ป ์ฐธ์กฐ : https://www.inflearn.com/roadmaps/373

๋ฐ˜์‘ํ˜•