우주먼지
article thumbnail
4 - Logging
Inflearn 강의/Spring MVC 2022. 11. 13. 21:18

💡 Logging private Logger log = LoggerFactory.getLogger(getClass()) -> @Slf4j 매핑 정보 @Controller는 반환값이 String 이면 View Name 으로 인식 @RestController는 반환값이 HTTP Message Body에 바로 입력 로그 레벨 설정 (application.properties) logging.level.root 전체 로그 레벨 설정 (default = info) logging.level.{directory} 선택한 패키지와 그 하위 로그 레벨 설정 로그의 출력 의미 없는 연산이 일어나 리소스를 낭비하지 않도록 연산자 사용 X 파라미터로 넘겨줌으로써 의미없는 연산 발생 X 로그 사용 시 장점 Thread, Clas..

article thumbnail
3 - Spring MVC 구조
Inflearn 강의/Spring MVC 2022. 11. 10. 00:06

💡 Spring MVC 구조 동작순서 Handler 조회 - Handler Mapping을 통해 Request URL에 Mapping된 Handler(Controller) 조회 Handler Adapter 조회 - Handler를 실행할 수 있는 HandlerAdapter 조회 Handler Adapter 실행 Handler 실행 - 실제 Handler(Controller) 실행 ModelAndView 반환 - Adapter는 Handler가 반환하는 정보를 ModelAndView로 변환해서 반환 viewResolver 호출 - viewResolver를 조회 후 실행 (내부에 뷰 포워딩 로직이 존재함) View Rendering [주요 인터페이스] 핸들러 매핑: org.springframework.web..

2 - SSR & CSR
Inflearn 강의/Spring MVC 2022. 11. 2. 04:13

💡 SSR & CSR SSR 서버에서 동적으로 HTML을 생성해서 클라이언트에 전달 화면이 정적이고, 복잡하지 않을때 사용 CSR HTML 결과를 JS를 사용해 웹 브라우저에 동적으로 생성&적용 복잡하고 동적인 UI 사용 동작 과정 HTML 요청 -> JS링크 응답 JS 요청 -> 클라이언트 로직, HTML 렌더링 코드 응답 HTTP API - 데이터 요청 -> JSON 데이터 응답 JS로 HTML 결과 렌더링 Spring Web Flux 기술적 난이도 매우 높음 함수형 스타일 개발 비동기 None Blocking 처리 최소 스레드 - 최대 성능 컨텍스트 스위칭 비용 효율화 서블릿 사용 X RDB 지원 미흡

1 - Servlet & Multi Thread
Inflearn 강의/Spring MVC 2022. 11. 2. 03:45

💡 Servlet 어플리케이션 로직 자동화 @WebServlet(name="name", urlPatterns="/path"), urlPatterns의 URL이 호출되면 서블릿 코드 실행 HttpServlet, HttpServletRequest, HttpServletResponse 클래스 사용 WAS가 요청,응답 객체를 새로 만들어서 서블릿 객체를 호출 서블릿 컨테이너 서블릿 객체의 생성,초기화,호출,종료 등 LifeCycle 관리 싱글톤 최초 로딩시 미리 서블릿 객체를 만들어두고 재활용 멀티스레드 지원 static 변수 사용 주의 💡 멀티 스레드 장점 동시 요청 처리 리소스 허용범위까지 처리 어떤 스레드가 지연되어도 나머지 스레드는 정상동작 단점 스레드 생성값이 비싸다 컨텍스트 스위칭 비용 발생 생성에 ..

검색 태그