일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | 6 | 7 |
8 | 9 | 10 | 11 | 12 | 13 | 14 |
15 | 16 | 17 | 18 | 19 | 20 | 21 |
22 | 23 | 24 | 25 | 26 | 27 | 28 |
29 | 30 | 31 |
- 성능테스트
- github
- EC2
- java
- 자바백엔드
- 데이터구조
- 코딩테스트
- 도커
- nGrinder
- F-Lab
- FLAB
- Flutter
- error
- MySQL
- Spring
- 에프랩
- 자바
- 레디스
- redis
- 알고리즘
- 트러블슈팅
- 멘토링
- grafana
- backend
- 백엔드
- 플러터
- 부트캠프
- 후기
- 로드밸런서
- AWS
- Today
- Total
민스씨의 일취일장
LogT | Java Spring의 MVC 패턴에 대해 알게된 모든 내용과 고민들 본문
LogT | Java Spring의 MVC 패턴에 대해 알게된 모든 내용과 고민들
읻민스 2023. 1. 9. 23:08Java Spring의 MVC에 대해 공부한 내용을 시간순으로 기록하고 있다.
2023년 1월 9일
스프링의 정석 강의에서 관심사의 분리와 MVC 패턴에 대한 강의를 들었다.
MVC 약자
MVC는 Model, View, Controller의 첫 글자들을 모아서 만든 단어이다.
관심사의 분리
OOP (Object-Oriented Programming) 5대 원칙 중 하나인 SRP(Single Responsibility Principle : 단일 책임 원칙)에 따라 코드를 크게 입력, 처리, 출력으로 나눌 수 있다.
입력
Client Side에서 데이터를 전달 받을 때 기존에는 HttpServletRequest 객체를 이용해서 하나하나 불러와야 했다. 하지만 Spring에서는 인자값에 변수를 설정해주면 자동으로 매칭이 돼 입력부 코드가 간소화 됐다.
출력
화면 출력을 위한 HTML 코드를 직접 코드에 작성하는 것 대신 Spring의 View 기능을 이용해 HTML 코드는 html 파일로 분리시켜 놓고 필요할 때 불러와서 사용할 수 있도록 했다.
Controller
위와 같은 입력과 출력의 기능을 본 코드에서 분리시켜 놓음으로써 코드는 처리 부분에 집중할 수 있도록 관심사를 분리할 수 있었고 이런 처리를 담단하는 객체를 Controller라고 부른다.
View
출력할 결과물들을 개개의 파일로 분리시켜 사용할 수 있도록 하는 Spring의 기능을 View 영역이 담당한다.
Model
위에서 Controller의 처리 결과를 View 영역으로 데이터를 전달 할 때 사용하는 객체를 Model이라고 한다.
오늘까지 이해한 MVC란?
MVC 패턴은 관심사에 따른 분리로 코드를 처리영역(Controller)와 출력영역(View)로 나누고, 이 두 영영에 데이터를 원할히 전달하기 위해 Model 이라는 데이터 전달 객체를 도입한 코딩방식이다.
'Programming Language & Framework > JAVA & Spring' 카테고리의 다른 글
LogT | Java Spring의 Application내의 데이터 저장소인 내장객체의 유효범위와 속성에 대해 알게된 모든 내용과 고민들 (0) | 2023.01.10 |
---|---|
LogT | Java Spring의 서블릿과 JSP에 대해 알게된 모든 내용과 고민들 (0) | 2023.01.10 |
LogT | Java Spring의 Application Context에 대해 알게된 모든 내용과 고민들 (0) | 2023.01.06 |
LogT | Java Spring의 Bean에 대해 알게된 모든 내용과 고민들 (0) | 2023.01.05 |
LogT | Spring의 Annotation에 대해서 알게된 모든 내용과 고민들 (0) | 2023.01.04 |