콘텐츠로 이동

2021 05 13

2021-05-13

제발 서블릿

  • Listener - Servlet의 Listener는 웹 어플리케이션의 주요 변화를 감지하여, 해당 이벤트 발생시 특별한 작업 수행 - ServletContextListener - Context의 생명주기 감시 - contextInitialized() / contextDestroyed()
  • Filter - Listener는 웹앱에 발생한 이벤트 감지 후 이벤트 이전에 특별 작업 수행 - Filter는 사용자 요청을 Servlet에 전달하기 전에 특별 처리 - init() - doFilter() - destory()
  • ServletWebApplication에 Spring 도입 - Spring에서 제공하는 IoC Container 사용 - Spring MVC 사용

페어하면서 생긴 질문

  1. ArgumentResolver에서 Service를 왜 호출하는가?

    • controller 들어가기 전 단계 아닌가??
  2. JwtTokenProvider는 어느 layer인가?

    • presentation layer vs service layer
  3. 어떤 필드를 token으로 만들어야 하는가?

    • id vs email
    • 클라이언트 입장에서는 email이 결국 이 웹사이트에서 id의 역할을 하는건데 당연히 수정불가능해야하는 것 아닌가?
    • 수정 포인트 1. email 불변 - dao 쿼리문 수정해야함 2. email 수정 - token 수정해야함 - loginmember 수정해야함, resolver 수정해야함
  4. 현재 service 구현 에서는 response dto를 뱉는다.
    근데 지금 리졸버에서 컨트롤러에 member를 전달해준다고 하면,
    service에서 response로 한 번 감싸서 뱉은거를 리졸버에서 다시 풀어서 도메인 객체로 만든 다음에 컨트롤러로 넘기는건지?
    리졸버에서 이렇게 member를 컨트롤러로 넘긴다면 컨트롤러가 도메인을 알게 되는 건데... 심지어 service에서 인증받은 친구를?!!?