Spring MVC Pattern
Spring MVC
Model , View , Controller 패턴의 개념이다.
Model
데이터 저장소와 연동하여 사용자의 데이터를 저장하거나
데이터를 출력하는 등의 일을 수행함 여러개의 데이터 변경작업(추가, 변경 , 삭제)들을
하나로 묶는 트랜잭션의 역할도 수행함 DAO class중 service에 해당됨
DAO(Data Access Object)
DB를 사용해 데이터를 조회하거나 조작하는 기능을 전담하도록 만든 오브젝트
View
모델이 처리한 데이터나 결과를 바탕으로 사용자에게 출력할 화면을 만드는 역할
뷰 컴포넌트는 html , css , Js를 사용하여 출력할 UI를 생성해줌 생성된 UI는 웹 브라우저가 출력
Controller
Client의 요청을 받았을 때 그 요청에 대해 실제 업무를 수행하는 Model을 호출
클라이언트가 보낸 데이터가 있다면 Model을 호출할 때 전달하기 쉽게 데이터의 가공
모델의 업무 수행이 완료되면 그 결과를 바탕으로 화면을 구성하도록 View에 전달
MVC 패턴의 사용 이유
Business logic과 Presentation logic을 분리하기 위함
Business logic : 데이터의 처리 및 응용을 수행하는 로직
Presentation logic : 화면상의 디자인 구성을 위한 로직
TestCase or TDD
개발을 통해서 구현한 기능을 실행할 때
자바의 main method를 통해서 실행하거나 웹 어플리케이션의 컨트롤러를 통해서 실행한다 .
이러한 방법은 준비하고 실행하는데 오래 걸리고 , 반복 실행하기 어렵고
여러 테스트를 한번에 실행하기 어렵다는 단점이있다.
Java는 Junit이라는 frameWork로 테스트를 실행해서 이러한 문제점을 해결한다.
TDD
구현 클래스 개발전 testCode의 작성을 선행(틀) →
정상 작동여부 확인 →
구현 클래스 개발 (test 주도 개발 TDD의 개념이다.)