길었던 for 문이 for each 문을 사용하면
보다 더 간결하고 직관적으로 쓸수있다.
1,2,3,4,5 를 출력하는 for 문과 미리 작성된 array를 참고하여
1,2,3,4,5 를 출력하는 for each 문
id값을 조회할때 옵셔널로 받아야함 -> id 없으면 어떡할거야?
orElseThrow
https://developsd.tistory.com/127
Lombok
코드 절약
@Getter 를 이용해서 getter를 작성 안 해줘도 됨
@NoArgsConstructor 기본 생성자를 안 만들어도 자동으로 생성자 만들어준다
@RequiredArgsConstructor ?
어노테이션
Bean 애플리케이션에 하나씩 들고있는거
-대규모 트래픽 처리 = 메모리 관리
컴포넌트
내가 만든 클래스를 Bean으로 등록하는것
둘 다 쓰레드를 같이 쓰게하려고 씀
DI 의존성 주입
IOC 제어의 역전
일반적인 제어 흐름 : 사용자가 자신이 필요한 객체를 생성해서 사용
역전된 제어 흐름: 필요한 객체에 @을 표시하면 컨테이너가 꺼내서 넣어준걸 바로 쓰면됨
( 용도에 맞게 필요한 객체를 생성없이 그냥 사용
DI컨테이너
-생성자 주입
-필드 주입
IoC 컨테이너에서 잘만들어진 콩들을 꺼내서 사용!
컨트롤러
주 용도: VIEW 리턴
레스트 컨트롤러
주 용도 :데이터 리턴
재부팅해서 해결