소개
게시글
질문&답변
@Autowired 관련 질문입니다!!
@Controller public class MemberController { // 생성자 주입 두 개 (required=false로 설정할 경우, 파라미터가 많은 생성자 생성자 호출 private final MemberService memberService; private final OrderService orderService; private DiscountPolicy discountPolicy; @Autowired(required=false) // 이거 호출 public MemberController(MemberService memberService, OrderService orderService) { this.memberService = memberService; this.orderService = orderService; } @Autowired(required=false) public MemberController(DiscountPolicy discountPolicy) { this.discountPolicy = discountPolicy; } // 아님 이르케 하셔도 될 것 같습니다. private final MemberService memberService; private final OrderService orderService; private DiscountPolicy discountPolicy; @Autowired public MemberController(MemberService memberService, OrderService orderService) { this.memberService = memberService; this.orderService = orderService; } @Autowired(required=false) // 옵션. 생성자 호출된 이후 호출될 수 있도록 해야함. 해당 빈이 없으면 호출안됨. public void setDiscountPolicy(DiscountPolicy discountPolicy) { this.discountPolicy = discountPolicy; } } 원하시는게 이런게 맞는지요?
- 0
- 2
- 314
질문&답변
@Autowired 관련 질문입니다!!
생성자가 하나면 애노테이션을 붙이지 않더라도 자동 선택됩니다. 스프링 코어 강의에서 설명해주셨는데, 스프링 도큐먼트에도 보니까 설명이 되어 있어 공유드려요. 즐거운 하루 되세요. :) https://docs.spring.io/spring-framework/docs/current/javadoc-api/org/springframework/beans/factory/annotation/Autowired.html
- 0
- 2
- 314