Fast-Campus Java Web Programming Camp 11일차

강의 정리

Posted by kingbbode on December 26, 2016

Recently by the same author:


3년차 웹 개발자

4년차로 접어든 웹 개발자의 3년차 늦은 회고

You may find interesting:


SpringOne Tour Seoul - Spring Cloud Gateway

스프링 원 투어 서울 컨퍼런스 중 정윤진님의 Spring Cloud Gateway 세션


스프링캠프 2018-Consumer Driven Contract

Consumer Driven Contract 기법을 활용한 마이크로서비스 API의 진화

열한번째 강의

강의 전에

우리는 왜 개발이 어려운가?

자신감과 지식에 허들이 있다! 대부분의 사람들은 허들을 넘지 못하고 포기한다

각 단계를 극복하는 방법

Serviving

  • 초보라 할지라도 학습을 같이할 동료를 구한다
  • 다른 사람의 코드 읽기
  • 지속적으로 작은 코드를 시작하고 빌드하면서 디버깅에 대한 두려움을 제거

Desert of Despair

  • 하나의 목표를 설정한 후 목표에 집중
  • 수박 겉핥기 식의 다양한 지식 습득이 아니라 한 분야에 대한 깊이있는 지식 습득
  • 구체적인 목표 의식

Upswing of Awesome

  • 핵심은 피드백을 받는 것
  • 코칭을 해줄 멘토나 동료를 찾는 것이 핵심

배운 것

Servlet

공통된 Default 설정을 web.xml에서 가지고 있다. web.xml은 DispatcherServlet의 설정을 담당한다.

아래는 XML이 아닌 Java Config이다.

@WebServlet(name = "dispatcher", urlPatterns = "/", loadOnStartup = 1)

위의 설정으로 web.xml을 재정의한다.

urlPatterns의 “/”, “/*” 차이

  • ”/*“로 Mapping을 하게되면, 모든 요청을 DispatcherServlet에서 처리하게 된다.

  • 정적인 자원에 대한 처리를 포함한 기존 모든 설정을 덮어씌워버리게 된다

  • 옛날에는 특정 요청을 구분하기 위해 ‘.do’를 사용했었다

서블릿 컨테이너 접근 순서

  • 재정의해논 서블릿 매핑인지 확인
  • Tomcat의 web.xml의 서블릿 매핑인지 확인

Front Controller 패턴 적용

  • 모든 요청의 앞 단에 Front Controller를 두는 패턴

loadOnStartup

  • 서블릿의 초기화를 어느 시점에 할 것인가를 결정
  • 1은 서버가 뜰 때
  • 사용자가 많아지면 1이 아닌 경우 문제가 될 수 있다

실습

JDBC 라이브러리 직접 구현 해보기