SpringBoot 개념 정리 1~3 강.

syoun602·2021년 4월 17일
0

Springboot 개념 정리

목록 보기
1/1
post-thumbnail

스프링부트 with JPA

스프링의 핵심**

프레임워크란? 틀(frame) - 즉, 틀에 맞춰서 개발할 수 있도록 해줌

  • 오픈소스 - 소스코드가 공개되어 있어 내부를 볼 수 있으며 뜯어고칠 수도 있다

  • IoC(Inversion of Control) 컨테이너를 가진다

    • 제어의 역전: 주도권을 스프링이 가지고 있음
    • 메소드나 객체의 호출 작업을 개발자가 아닌 외부에서 결정짓는 것
    • Class: 설계도
    • Object: 실체화 가능한 것
    • Instance: 실체화 된 것

      롤(LoL 게임)로 비유하면 누누라는 class가 존재할 때, 누누는 게임속에서 실체화가 가능하니 object. 하지만, 여러 챔피언을 일컫는 character라는 클래스는 추상적이므로 object가 될 수 없음. 만일 누누가 object로 존재하다가 세상에 튀어나오는 순간 instance

  • DI(Dependency Injection)를 지원한다

    • 의존성 주입 스프링이 관리하는 객체를 내가 원하는 모든 클래스의 메서드에서 가져와서 사용이 가능함
  • 많은 필터를 가지고 있다

    • 검열을 해주는 것 – 권한이 있을 시에만 접근이 가능하도록 함
  • 많은 어노테이션을 가지고 있다 (리플렉션, 컴파일 체킹)

    • 어노테이션 – 주석인데, 컴파일러가 무시하지 않고 체크할 수 있도록 힌트를 제공

      @Override
      @Component – 클래스 메모리에 로딩
      @Autowired – 로딩된 객체를 해당 변수에 집어 넣어

    • 리플렉션 – 스프링이 스캔할 때 (런타임 때), 클래스 내부에 무엇이 있는지 분석하고 무엇을 해야할지 지정해주는 기법
  • MessageConverter를 가지고 있다 (Json)

    • 자바 object를 전송하기 전에 중간 데이터인 json object로 converting 함
  • BufferedReader와 BufferedWriter를 쉽게 사용할 수 있다

    • 가변 길이의 문자를 사용
    • @ResponseBody – BufferedWriter가 동작
    • @RequestBody – BufferedReader가 동작

💡 위 글은 데어 프로그래밍을 참고하였습니다.
https://www.youtube.com/playlist?list=PL93mKxaRDidG_OIfRQ4nztPQ13y74lCYg

0개의 댓글