Fast-Campus Java Web Programming Camp 10일차

강의 정리

Posted by kingbbode on December 22, 2016

Recently by the same author:


스프링캠프 2018-Consumer Driven Contract

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

You may find interesting:


Spring 에서 @ConditionalOnClass, @ConditionalOnBean 사용할 때 주의할 점

Spring Boot 기반의 자동 설정을 위한 AutoConfiguration 클래스를 만들다가 발생한 이슈 공유 (ClassNotFoundException, ArrayStoreException)


Spring Boot 와 Properties(or Yaml) Environment

Spring의 PropertySource 의 Yaml 미지원과 ConfigurationProeprties 의 locations Deprecated 의 배경을 알아보자!.

열번째 강의

강의 전에

백엔드 개발자의 미래

  • 백엔드
  • 프론트
  • 모바일
  • QA
  • 시스템

각 전문가가 만나는 접점에서 문제가 생긴다.

백엔드라는 영역에만 국한되지 않고, 다른 영역과의 접점에서도 발전을 제시할 수 있고, 알고 싶어하는 개발자는 좋은 개발자가 될 것이다.

(미래는 알 수 없다. 끊이없이 발전하려 노력하는 사람이 살아남을 것이다.,, 내 생각)


배운 것

모델1

  • 서블릿 없는 개발
  • 파일에 직접 접근
  • JSP 안에 모든 것이 들어가 있음
    • 비지니스 로직만 분리

문제점

  • 유지보수 어려움
  • 처기 개발 속도는 빠른 듯 하지만, 시간이 지날수록 더 많은 비용 발생
  • 테스트하기 어려움

그래서 MVC 패턴을 적용

  • View에 직접 접근하는 것을 막음
  • View는 출력하는 용도로만 사용

모델2 또는 MVC

JSP(뷰와 로직이 같이 들어 있는)를 Controller(Servlet), View(JSP)로 분리

  • Model : 실질적인 비지니스 로직을 담당
  • View : 단순히 출력
  • Controller : 최초 진입 지점(사용자의 입력 값이 유효한 지를 검증하고, 사용자가 입력한 데이터를 Model에 전달하고, Model의 처리 결과에 이동할 View를 결정하는 영역)

실습

서블릿 구현하기

  • DispatcherServlet
  • RequestMapping
  • Controller