Notice
Recent Posts
Recent Comments
Link
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
Tags
- 인텔리제이
- 스프링시큐리티
- JSESSIONID
- 김영한
- 항해99
- PUT과 PATCH
- unmappable character for encoding MS949
- java.sql.SQLException
- java
- 엔터키 이벤트
- jwt
- TIL
- 자바
- 알고리즘
- MS949
- .decode('utf-8')
- 인프런
- 객체지향
- 프로그래머스
- Code
- 스파르타코딩클럽
- API
- 에러해결법
- mysql
- 자바스프링
- HTML
- WIL
- ServerSelectionTimeoutError
- org.h2.jdbc.JdbcSQLSyntaxErrorException
- 독서
Archives
- Today
- Total
고을마을 : 나의 코딩 이야기
항해99 7기 19일차 TIL[MVC와 Controller,Repository,Service] 본문
항해99 7기/TIL(Today I Learned)
항해99 7기 19일차 TIL[MVC와 Controller,Repository,Service]
고을마을 2022. 5. 28. 01:322022년 5월 27일. 항해 19일차.
오늘부터 주특기숙련주차가 시작됐다.
주특기입문주차보다 방대한 수업자료량에 놀랐고 강의와 자료를 보는데 온 하루를 다썼던 날.
오늘 배운 내용의 핵심 내용을 기록해본다.(작성해보면서 복습도 하고, 또 읽어보면서 이해도 하고 하는거겠지ㅋㅋ)
정적 페이지와 동적 페이지
- 정적 (static) 웹 페이지
- Controller
- Client 의 요청을 Model 로 받아 처리 (ex: 회원가입을 위한 개인 정보들 (id, password, name))
- Client 에게 View (정적 웹 페이지, HTML) 를 내려줌
- Controller
- 동적 (dynamic) 웹 페이지
- Controller
- Client 의 요청을 Model 로 받아 처리
- Template engine 에게 View, Model 전달
- View: 동적 HTML 파일
- Model: View 에 적용할 정보들
- Template engine
- View 에 Model 을 적용 → 동적 웹페이지 생성
- 예) 로그인 성공 시, "로그인된 사용자의 id" 를 페이지에 추가
- Template engine 종류: 타임리프 (Thymeleaf), Groovy, FreeMarker, Jade 등 (스프링에서 JSP 이용은 추천하지 않고 있음)
- View 에 Model 을 적용 → 동적 웹페이지 생성
- Client 에게 View (동적 웹 페이지, HTML) 를 내려줌
- 정적 (static) 웹 페이지
- Controller
- Client 의 요청을 Model 로 받아 처리 (ex: 회원가입을 위한 개인 정보들 (id, password, name))
- Client 에게 View (정적 웹 페이지, HTML) 를 내려줌
- Controller
- 동적 (dynamic) 웹 페이지
- Controller
- Client 의 요청을 Model 로 받아 처리
- Template engine 에게 View, Model 전달
- View: 동적 HTML 파일
- Model: View 에 적용할 정보들
- Template engine
- View 에 Model 을 적용 → 동적 웹페이지 생성
- ex) 로그인 성공 시, "로그인된 사용자의 id" 를 페이지에 추가
- Template engine 종류: 타임리프 (Thymeleaf), Groovy, FreeMarker, Jade 등 (스프링에서 JSP 이용은 추천하지 않고 있음)
- View 에 Model 을 적용 → 동적 웹페이지 생성
- Client 에게 View (동적 웹 페이지, HTML) 를 내려줌
- Controller
- Controller
Controller,Repository,Service
- Controller
- 클라이언트의 요청을 받음
- 요청에 대한 처리는 서비스에게 전담
- 클라이언트에게 응답
- Service
- 사용자의 요구사항을 처리 ('비즈니스 로직') 하는 실세 중에 실세!!!
- 현업에서는 서비스 코드가 계속 비대해짐
- DB 정보가 필요할 때는 Repository 에게 요청
- 사용자의 요구사항을 처리 ('비즈니스 로직') 하는 실세 중에 실세!!!
- Repository
- DB 관리 (연결, 해제, 자원 관리)
- DB CRUD 작업 처리
솔직히 오늘 너무 어려웠다!
이해하는데 한참 걸렸고 완벽하게 이해하지 못한 내용도 있었다.
주특기 숙련주차 각오는 하고 있었지만...ㅠㅠ
객체중복생성문제, 의존성주입... 아직도 알아야할게 너무 많다. 내일도 힘내자.
'항해99 7기 > TIL(Today I Learned)' 카테고리의 다른 글
항해99 24일차 TIL[@Transactional, 페이징 및 정렬 설계] (0) | 2022.06.04 |
---|---|
항해99 23일차 TIL[자기반성의 시간] (0) | 2022.06.03 |
항해99 7기 18일차 TIL[개별과제 완성] (0) | 2022.05.26 |
항해99 7기 17일차 TIL[PUT과 PATCH, MySQL 사용] (0) | 2022.05.26 |
항해99 7기 16일차 TIL[Timestamped- @MappedSuperclass ] (0) | 2022.05.25 |