SlideShare a Scribd company logo
1 of 14
Group No.3
2010360305 구본환 2010360313 이가혜 2010360317 정우현
Model View Controller
MVC
KUCIN
• Model : 어플리케이션의 데이터와 비즈니스 로직을 담는 객체이다.
• View : Model의 정보를 사용자에게 표시한다. 하나의 Model을
다양한 View에서 사용할 수 있다.
• Controller : Model과 View의 중계역할로 view를 선택한다.
사용자의 요청을 받아 Model에 변경된 상태를 반영하고, 응답
HSQLDB Connection
KUCIN
– MVC 패턴은 UI 코드와 비즈니스 코드를 분리함으로써
종속성을 줄이고, 재사용성을 높이고, 보다 쉬운 변경이
가능하도록 한다.
– 전자정부프레임워크에서 “MVC 서비스”란 MVC 패턴을
활용한 Web MVC Framework를 의미한다.
web.xml
KUCIN
<welcome-file-list>
<welcome-file>index.jsp</welcome-file>
</welcome-file-list>
해당 서버에 접속했을 때 처음으로 보여줄 페이지명을
설정합니다.
index.jsp
서버에 "/sample/egovSampleList.do"를 요청합니다.
web.xml
.do라는 URL패턴이 들어오면
DispatcherServlet가 요청을 처리하게 됩니다.
DispatcherServlet은
/WEB-INF/config/egovframework/springmvc/dispatcher-
servlet.xml 파일에 설정되어 있습니다.
Spring MVC
Spring MVC
- DispatcherServlet
DispatcherServlet은 스프링MVC의 웹요청을 처리하는 전 과정을 관리하는
전달자로 요청에 따른 컨트롤러를 구해 처리된 결과를 클라이언트에게
응답하는 스프링MVC의 핵심
- HandlerMapping
웹요청시 해당 URL을 어떤 Controller가 처리할지 검색하여
DispatcherServlet에 전달
- Controller
클라이언트의 요청을 처리한다. 결과 데이터를 ModelAndView에 반영하고
DispatcherServlet에 전달
- ModelAndView
컨트롤러가 처리한 결과와 View에 대한 정보를 가진다.
- ViewResolver
결과를 생성할 View 를 결정한다.
- View
결과 데이터인 Model 객체를 display한다.
Spring MVC 처리과정
1. 클라이언트의 요청이 DispatcherServlet에 전달
2. DispatcherServlet은 HandlerMapping에게 클라이언트의
요청을 처리할 컨트롤러 객체를 요청
3. HandlerMapping은 요청을 처리할 컨트롤러를
DispatcherServlet에 알려준다.
4. DispatcherServlet은 해당 Controller에 처리를 요청
5. Controller는 처리결과 및 view정보를 ModelAndView에 담아
DispatcherServlet에 전달
Spring MVC 처리과정
6. DispatcherServlet은 처리결과를 생성할 View를 구하기 위해
ViewResolver에 요청
7. ViewResolver는 처리결과를 생성할 View를
DispatcherServlet에 전달
8. DispatcherServlet은 View에 응답생성을 요청
9. View는 클라이언트에 전송할 응답을 생성
Thank youGroup No.3
MVC(Model View Controller)
Group No.3
2010360305 구본환 2010360313 이가혜 2010360317 정우현
MVC 모델1 아키텍처
KUCIN
MVC 모델2 아키텍처
KUCIN
MVC는 피자 [참고]
M이 Model
M은 '토핑„
피자의 맛 이를테면 하와이안인지 페페로니인지 불고기인지 결정하는건 '토핑„
MVC가 최종적으로 사용자에게 보여지는건 Model이 결정.
모델은 쉽게 말하면 데이터야.
전화받는 알바생이 피자 만드는 알바생한테 '포테이토 피자에 치즈크러스터'
이렇게 주문. Controller역할을 하는 피자 만드는 알바생이 피자로 만든다.
전화를 받는 알바생'은 Dispatcher에 해당
사용자로부터 요청이 들어오면 Controller한테 요청한 '고르곤 졸라 피자에
고구마 무스'를 피자 만드는 알바생한테 전달해주는 역할.
물론 디스패쳐라는 사용자의 요청을 전달 뿐만 아니라 Controller가 만들어준
피자를 오토바이 타고 배달까지 해주는 '피자 배달 알바생'역할도 한다.
그러면 최종적으로 받는 결과물은 Controller가 조합을 해준 MV.

More Related Content

What's hot

HOONS닷넷 오픈소스 프로젝트 Part1.
HOONS닷넷 오픈소스 프로젝트 Part1.HOONS닷넷 오픈소스 프로젝트 Part1.
HOONS닷넷 오픈소스 프로젝트 Part1.Hojin Jun
 
Servlet Architecture
Servlet ArchitectureServlet Architecture
Servlet ArchitectureJU Chae
 
HeadFisrt Servlet&JSP Chapter 3
HeadFisrt Servlet&JSP Chapter 3HeadFisrt Servlet&JSP Chapter 3
HeadFisrt Servlet&JSP Chapter 3J B
 
03.[참고]개발환경 교육교재
03.[참고]개발환경 교육교재03.[참고]개발환경 교육교재
03.[참고]개발환경 교육교재Hankyo
 
Facebook은 React를 왜 만들었을까?
Facebook은 React를 왜 만들었을까? Facebook은 React를 왜 만들었을까?
Facebook은 React를 왜 만들었을까? Kim Hunmin
 
04.모바일 device api_실습교재
04.모바일 device api_실습교재04.모바일 device api_실습교재
04.모바일 device api_실습교재Hankyo
 
03.[참고]표준프레임워크기반 개발방법
03.[참고]표준프레임워크기반 개발방법03.[참고]표준프레임워크기반 개발방법
03.[참고]표준프레임워크기반 개발방법Hankyo
 
HeadFisrt Servlet&JSP Chapter 2
HeadFisrt Servlet&JSP Chapter 2HeadFisrt Servlet&JSP Chapter 2
HeadFisrt Servlet&JSP Chapter 2J B
 
07.실행환경 교육교재(표준프레임워크 세부 적용기준)
07.실행환경 교육교재(표준프레임워크 세부 적용기준)07.실행환경 교육교재(표준프레임워크 세부 적용기준)
07.실행환경 교육교재(표준프레임워크 세부 적용기준)Hankyo
 
Angularjs 도입 선택 가이드
Angularjs 도입 선택 가이드Angularjs 도입 선택 가이드
Angularjs 도입 선택 가이드NAVER D2
 
레일스를 이용한 애자일 웹 개발 가이드
레일스를 이용한 애자일 웹 개발 가이드레일스를 이용한 애자일 웹 개발 가이드
레일스를 이용한 애자일 웹 개발 가이드Sukjoon Kim
 
ReactJS | 서버와 클라이어트에서 동시에 사용하는
ReactJS | 서버와 클라이어트에서 동시에 사용하는ReactJS | 서버와 클라이어트에서 동시에 사용하는
ReactJS | 서버와 클라이어트에서 동시에 사용하는Taegon Kim
 
03.모바일 실습교재(모바일 공통컴포넌트 실습)
03.모바일 실습교재(모바일 공통컴포넌트 실습)03.모바일 실습교재(모바일 공통컴포넌트 실습)
03.모바일 실습교재(모바일 공통컴포넌트 실습)Hankyo
 
Ruby on Rails와 함께 하는 애자일 웹 개발
Ruby on Rails와 함께 하는 애자일 웹 개발Ruby on Rails와 함께 하는 애자일 웹 개발
Ruby on Rails와 함께 하는 애자일 웹 개발Sukjoon Kim
 
Spring boot 5장 cli
Spring boot 5장 cliSpring boot 5장 cli
Spring boot 5장 cliChoonghyun Yang
 
XECon2015 :: [2-2] 박상현 - React로 개발하는 SPA 실무 이야기
XECon2015 :: [2-2] 박상현 - React로 개발하는 SPA 실무 이야기XECon2015 :: [2-2] 박상현 - React로 개발하는 SPA 실무 이야기
XECon2015 :: [2-2] 박상현 - React로 개발하는 SPA 실무 이야기XpressEngine
 
React Native를 사용한
 초간단 커뮤니티 앱 제작
React Native를 사용한
 초간단 커뮤니티 앱 제작React Native를 사용한
 초간단 커뮤니티 앱 제작
React Native를 사용한
 초간단 커뮤니티 앱 제작Taegon Kim
 

What's hot (20)

HOONS닷넷 오픈소스 프로젝트 Part1.
HOONS닷넷 오픈소스 프로젝트 Part1.HOONS닷넷 오픈소스 프로젝트 Part1.
HOONS닷넷 오픈소스 프로젝트 Part1.
 
Servlet Architecture
Servlet ArchitectureServlet Architecture
Servlet Architecture
 
HeadFisrt Servlet&JSP Chapter 3
HeadFisrt Servlet&JSP Chapter 3HeadFisrt Servlet&JSP Chapter 3
HeadFisrt Servlet&JSP Chapter 3
 
Presentation1
Presentation1Presentation1
Presentation1
 
03.[참고]개발환경 교육교재
03.[참고]개발환경 교육교재03.[참고]개발환경 교육교재
03.[참고]개발환경 교육교재
 
Facebook은 React를 왜 만들었을까?
Facebook은 React를 왜 만들었을까? Facebook은 React를 왜 만들었을까?
Facebook은 React를 왜 만들었을까?
 
04.모바일 device api_실습교재
04.모바일 device api_실습교재04.모바일 device api_실습교재
04.모바일 device api_실습교재
 
03.[참고]표준프레임워크기반 개발방법
03.[참고]표준프레임워크기반 개발방법03.[참고]표준프레임워크기반 개발방법
03.[참고]표준프레임워크기반 개발방법
 
HeadFisrt Servlet&JSP Chapter 2
HeadFisrt Servlet&JSP Chapter 2HeadFisrt Servlet&JSP Chapter 2
HeadFisrt Servlet&JSP Chapter 2
 
Mvc pattern
Mvc patternMvc pattern
Mvc pattern
 
07.실행환경 교육교재(표준프레임워크 세부 적용기준)
07.실행환경 교육교재(표준프레임워크 세부 적용기준)07.실행환경 교육교재(표준프레임워크 세부 적용기준)
07.실행환경 교육교재(표준프레임워크 세부 적용기준)
 
Angularjs 도입 선택 가이드
Angularjs 도입 선택 가이드Angularjs 도입 선택 가이드
Angularjs 도입 선택 가이드
 
레일스를 이용한 애자일 웹 개발 가이드
레일스를 이용한 애자일 웹 개발 가이드레일스를 이용한 애자일 웹 개발 가이드
레일스를 이용한 애자일 웹 개발 가이드
 
ReactJS | 서버와 클라이어트에서 동시에 사용하는
ReactJS | 서버와 클라이어트에서 동시에 사용하는ReactJS | 서버와 클라이어트에서 동시에 사용하는
ReactJS | 서버와 클라이어트에서 동시에 사용하는
 
03.모바일 실습교재(모바일 공통컴포넌트 실습)
03.모바일 실습교재(모바일 공통컴포넌트 실습)03.모바일 실습교재(모바일 공통컴포넌트 실습)
03.모바일 실습교재(모바일 공통컴포넌트 실습)
 
Ruby on Rails와 함께 하는 애자일 웹 개발
Ruby on Rails와 함께 하는 애자일 웹 개발Ruby on Rails와 함께 하는 애자일 웹 개발
Ruby on Rails와 함께 하는 애자일 웹 개발
 
Spring boot 5장 cli
Spring boot 5장 cliSpring boot 5장 cli
Spring boot 5장 cli
 
XECon2015 :: [2-2] 박상현 - React로 개발하는 SPA 실무 이야기
XECon2015 :: [2-2] 박상현 - React로 개발하는 SPA 실무 이야기XECon2015 :: [2-2] 박상현 - React로 개발하는 SPA 실무 이야기
XECon2015 :: [2-2] 박상현 - React로 개발하는 SPA 실무 이야기
 
React Native를 사용한
 초간단 커뮤니티 앱 제작
React Native를 사용한
 초간단 커뮤니티 앱 제작React Native를 사용한
 초간단 커뮤니티 앱 제작
React Native를 사용한
 초간단 커뮤니티 앱 제작
 
역시 Redux
역시 Redux역시 Redux
역시 Redux
 

Viewers also liked

The hidden gems of Spring Security
The hidden gems of Spring SecurityThe hidden gems of Spring Security
The hidden gems of Spring SecurityMassimiliano Dessì
 
Best Practices for Large-Scale Web Sites
Best Practices for Large-Scale Web SitesBest Practices for Large-Scale Web Sites
Best Practices for Large-Scale Web SitesCraig Dickson
 
JavaScript 2014 프론트엔드 기술 리뷰
JavaScript 2014 프론트엔드 기술 리뷰JavaScript 2014 프론트엔드 기술 리뷰
JavaScript 2014 프론트엔드 기술 리뷰Kenu, GwangNam Heo
 
가볍게 살펴보는 AngularJS
가볍게 살펴보는 AngularJS가볍게 살펴보는 AngularJS
가볍게 살펴보는 AngularJSJae Sung Park
 
자바 웹 개발 시작하기 (4주차 : MVC)
자바 웹 개발 시작하기 (4주차 : MVC)자바 웹 개발 시작하기 (4주차 : MVC)
자바 웹 개발 시작하기 (4주차 : MVC)DK Lee
 
프로젝트에서 Sw아키텍트의 역할 20140717
프로젝트에서 Sw아키텍트의 역할 20140717프로젝트에서 Sw아키텍트의 역할 20140717
프로젝트에서 Sw아키텍트의 역할 20140717Young On Kim
 
분석과 설계
분석과 설계분석과 설계
분석과 설계Haeil Yi
 
The Art of AngularJS - DeRailed 2014
The Art of AngularJS - DeRailed 2014The Art of AngularJS - DeRailed 2014
The Art of AngularJS - DeRailed 2014Matt Raible
 
스프링 프레임워크로 블로그 개발하기
스프링 프레임워크로 블로그 개발하기 스프링 프레임워크로 블로그 개발하기
스프링 프레임워크로 블로그 개발하기 라한사 아
 
프론트엔드로 시작하는 웹 개발 방법과 지식들
프론트엔드로 시작하는 웹 개발 방법과 지식들프론트엔드로 시작하는 웹 개발 방법과 지식들
프론트엔드로 시작하는 웹 개발 방법과 지식들Eun Cho
 
네이버 오픈세미나 백엔드_아키텍쳐
네이버 오픈세미나 백엔드_아키텍쳐네이버 오픈세미나 백엔드_아키텍쳐
네이버 오픈세미나 백엔드_아키텍쳐NAVER D2
 
SW 아키텍처 분석방법
SW 아키텍처 분석방법 SW 아키텍처 분석방법
SW 아키텍처 분석방법 YoungSu Son
 
초보 개발자를 위한 웹 프론트엔드 개발 101
초보 개발자를 위한 웹 프론트엔드 개발 101초보 개발자를 위한 웹 프론트엔드 개발 101
초보 개발자를 위한 웹 프론트엔드 개발 101Chang W. Doh
 
프론트엔드 웹앱 프레임웍 - Bootstrap, Backbone 그리고 AngularJS
프론트엔드 웹앱 프레임웍 - Bootstrap, Backbone 그리고 AngularJS프론트엔드 웹앱 프레임웍 - Bootstrap, Backbone 그리고 AngularJS
프론트엔드 웹앱 프레임웍 - Bootstrap, Backbone 그리고 AngularJS동수 장
 
Angular 2 - Core Concepts
Angular 2 - Core ConceptsAngular 2 - Core Concepts
Angular 2 - Core ConceptsFabio Biondi
 
2.네이버 프론트엔드 김지태
2.네이버 프론트엔드 김지태2.네이버 프론트엔드 김지태
2.네이버 프론트엔드 김지태NAVER D2
 
서버 아키텍쳐 입문
서버 아키텍쳐 입문서버 아키텍쳐 입문
서버 아키텍쳐 입문중선 곽
 
서버 성능에 대한 정의와 이해
서버 성능에 대한 정의와 이해서버 성능에 대한 정의와 이해
서버 성능에 대한 정의와 이해중선 곽
 
Introduction to Angular 2
Introduction to Angular 2Introduction to Angular 2
Introduction to Angular 2Knoldus Inc.
 
웹 Front-End 실무 이야기
웹 Front-End 실무 이야기웹 Front-End 실무 이야기
웹 Front-End 실무 이야기JinKwon Lee
 

Viewers also liked (20)

The hidden gems of Spring Security
The hidden gems of Spring SecurityThe hidden gems of Spring Security
The hidden gems of Spring Security
 
Best Practices for Large-Scale Web Sites
Best Practices for Large-Scale Web SitesBest Practices for Large-Scale Web Sites
Best Practices for Large-Scale Web Sites
 
JavaScript 2014 프론트엔드 기술 리뷰
JavaScript 2014 프론트엔드 기술 리뷰JavaScript 2014 프론트엔드 기술 리뷰
JavaScript 2014 프론트엔드 기술 리뷰
 
가볍게 살펴보는 AngularJS
가볍게 살펴보는 AngularJS가볍게 살펴보는 AngularJS
가볍게 살펴보는 AngularJS
 
자바 웹 개발 시작하기 (4주차 : MVC)
자바 웹 개발 시작하기 (4주차 : MVC)자바 웹 개발 시작하기 (4주차 : MVC)
자바 웹 개발 시작하기 (4주차 : MVC)
 
프로젝트에서 Sw아키텍트의 역할 20140717
프로젝트에서 Sw아키텍트의 역할 20140717프로젝트에서 Sw아키텍트의 역할 20140717
프로젝트에서 Sw아키텍트의 역할 20140717
 
분석과 설계
분석과 설계분석과 설계
분석과 설계
 
The Art of AngularJS - DeRailed 2014
The Art of AngularJS - DeRailed 2014The Art of AngularJS - DeRailed 2014
The Art of AngularJS - DeRailed 2014
 
스프링 프레임워크로 블로그 개발하기
스프링 프레임워크로 블로그 개발하기 스프링 프레임워크로 블로그 개발하기
스프링 프레임워크로 블로그 개발하기
 
프론트엔드로 시작하는 웹 개발 방법과 지식들
프론트엔드로 시작하는 웹 개발 방법과 지식들프론트엔드로 시작하는 웹 개발 방법과 지식들
프론트엔드로 시작하는 웹 개발 방법과 지식들
 
네이버 오픈세미나 백엔드_아키텍쳐
네이버 오픈세미나 백엔드_아키텍쳐네이버 오픈세미나 백엔드_아키텍쳐
네이버 오픈세미나 백엔드_아키텍쳐
 
SW 아키텍처 분석방법
SW 아키텍처 분석방법 SW 아키텍처 분석방법
SW 아키텍처 분석방법
 
초보 개발자를 위한 웹 프론트엔드 개발 101
초보 개발자를 위한 웹 프론트엔드 개발 101초보 개발자를 위한 웹 프론트엔드 개발 101
초보 개발자를 위한 웹 프론트엔드 개발 101
 
프론트엔드 웹앱 프레임웍 - Bootstrap, Backbone 그리고 AngularJS
프론트엔드 웹앱 프레임웍 - Bootstrap, Backbone 그리고 AngularJS프론트엔드 웹앱 프레임웍 - Bootstrap, Backbone 그리고 AngularJS
프론트엔드 웹앱 프레임웍 - Bootstrap, Backbone 그리고 AngularJS
 
Angular 2 - Core Concepts
Angular 2 - Core ConceptsAngular 2 - Core Concepts
Angular 2 - Core Concepts
 
2.네이버 프론트엔드 김지태
2.네이버 프론트엔드 김지태2.네이버 프론트엔드 김지태
2.네이버 프론트엔드 김지태
 
서버 아키텍쳐 입문
서버 아키텍쳐 입문서버 아키텍쳐 입문
서버 아키텍쳐 입문
 
서버 성능에 대한 정의와 이해
서버 성능에 대한 정의와 이해서버 성능에 대한 정의와 이해
서버 성능에 대한 정의와 이해
 
Introduction to Angular 2
Introduction to Angular 2Introduction to Angular 2
Introduction to Angular 2
 
웹 Front-End 실무 이야기
웹 Front-End 실무 이야기웹 Front-End 실무 이야기
웹 Front-End 실무 이야기
 

Similar to [웹기반시스템 3조] mvc

Implementing android mvi pattern
Implementing android mvi patternImplementing android mvi pattern
Implementing android mvi pattern금 허
 
04.실행환경 교육교재(화면처리)
04.실행환경 교육교재(화면처리)04.실행환경 교육교재(화면처리)
04.실행환경 교육교재(화면처리)Hankyo
 
Angular js 의존관계 주입과 서비스
Angular js 의존관계 주입과 서비스Angular js 의존관계 주입과 서비스
Angular js 의존관계 주입과 서비스Tae Ho Kang
 
Create App Easier With SVC Pattern - DroidKnights 2019 @Seoul
Create App Easier With SVC Pattern - DroidKnights 2019 @SeoulCreate App Easier With SVC Pattern - DroidKnights 2019 @Seoul
Create App Easier With SVC Pattern - DroidKnights 2019 @SeoulBansook Nam
 
[NEXT] Andorid에 MVC 패턴 적용하기
[NEXT] Andorid에 MVC 패턴 적용하기[NEXT] Andorid에 MVC 패턴 적용하기
[NEXT] Andorid에 MVC 패턴 적용하기YoungSu Son
 
Backbone 발표
Backbone 발표Backbone 발표
Backbone 발표Gunhee Lee
 
[KAU UMC 컨퍼런스] Java 기반 Web의 역사 - 김준기
[KAU UMC 컨퍼런스] Java 기반 Web의 역사 - 김준기[KAU UMC 컨퍼런스] Java 기반 Web의 역사 - 김준기
[KAU UMC 컨퍼런스] Java 기반 Web의 역사 - 김준기JunGi Kim
 
주니어 입장에서 바라보는 디자인패턴 & 아키텍쳐.pdf
주니어 입장에서 바라보는 디자인패턴 & 아키텍쳐.pdf주니어 입장에서 바라보는 디자인패턴 & 아키텍쳐.pdf
주니어 입장에서 바라보는 디자인패턴 & 아키텍쳐.pdf병근 손
 
[웹기반시스템 3조]e govframe 중간고사 제출 정리
[웹기반시스템 3조]e govframe 중간고사 제출 정리[웹기반시스템 3조]e govframe 중간고사 제출 정리
[웹기반시스템 3조]e govframe 중간고사 제출 정리구 봉
 
iOS Architecture.pdf
iOS Architecture.pdfiOS Architecture.pdf
iOS Architecture.pdfssuser86e2971
 
Mvc 패턴
Mvc 패턴Mvc 패턴
Mvc 패턴Seokju Hong
 
신입 웹 개발자 포트폴리오 / 댓글 게시판
신입 웹 개발자 포트폴리오 / 댓글 게시판신입 웹 개발자 포트폴리오 / 댓글 게시판
신입 웹 개발자 포트폴리오 / 댓글 게시판hyeonjae Cheon
 
유엔진 오픈소스 클라우드 플랫폼 (uEngine Microservice architecture Platform)
유엔진 오픈소스 클라우드 플랫폼 (uEngine Microservice architecture Platform)유엔진 오픈소스 클라우드 플랫폼 (uEngine Microservice architecture Platform)
유엔진 오픈소스 클라우드 플랫폼 (uEngine Microservice architecture Platform)uEngine Solutions
 
[스프링 스터디 3일차] @MVC
[스프링 스터디 3일차] @MVC[스프링 스터디 3일차] @MVC
[스프링 스터디 3일차] @MVCAnselmKim
 
[NEXT] 화면 재갱신이 되는 안드로이드 앱 만들기 - 네트워크에 독립하는 구조로 변경
[NEXT] 화면 재갱신이 되는 안드로이드 앱 만들기 - 네트워크에 독립하는 구조로 변경[NEXT] 화면 재갱신이 되는 안드로이드 앱 만들기 - 네트워크에 독립하는 구조로 변경
[NEXT] 화면 재갱신이 되는 안드로이드 앱 만들기 - 네트워크에 독립하는 구조로 변경YoungSu Son
 
[Td 2015]각이 다른 mvc6! 그 여섯 번째 이야기!(최지훈)
[Td 2015]각이 다른 mvc6! 그 여섯 번째 이야기!(최지훈)[Td 2015]각이 다른 mvc6! 그 여섯 번째 이야기!(최지훈)
[Td 2015]각이 다른 mvc6! 그 여섯 번째 이야기!(최지훈)Sang Don Kim
 
마이크로서비스를 위한 AWS 아키텍처 패턴 및 모범 사례 - AWS Summit Seoul 2017
마이크로서비스를 위한 AWS 아키텍처 패턴 및 모범 사례 - AWS Summit Seoul 2017마이크로서비스를 위한 AWS 아키텍처 패턴 및 모범 사례 - AWS Summit Seoul 2017
마이크로서비스를 위한 AWS 아키텍처 패턴 및 모범 사례 - AWS Summit Seoul 2017Amazon Web Services Korea
 
Cloud-Barista 제2차 오픈 컨퍼런스 : CB-Waterstrider-멀티 클라우드 서비스 공통 플랫폼 웹도구(Cloud-Bari...
Cloud-Barista 제2차 오픈 컨퍼런스 : CB-Waterstrider-멀티 클라우드 서비스 공통 플랫폼 웹도구(Cloud-Bari...Cloud-Barista 제2차 오픈 컨퍼런스 : CB-Waterstrider-멀티 클라우드 서비스 공통 플랫폼 웹도구(Cloud-Bari...
Cloud-Barista 제2차 오픈 컨퍼런스 : CB-Waterstrider-멀티 클라우드 서비스 공통 플랫폼 웹도구(Cloud-Bari...Cloud-Barista Community
 

Similar to [웹기반시스템 3조] mvc (20)

Implementing android mvi pattern
Implementing android mvi patternImplementing android mvi pattern
Implementing android mvi pattern
 
04.실행환경 교육교재(화면처리)
04.실행환경 교육교재(화면처리)04.실행환경 교육교재(화면처리)
04.실행환경 교육교재(화면처리)
 
Angular js 의존관계 주입과 서비스
Angular js 의존관계 주입과 서비스Angular js 의존관계 주입과 서비스
Angular js 의존관계 주입과 서비스
 
Create App Easier With SVC Pattern - DroidKnights 2019 @Seoul
Create App Easier With SVC Pattern - DroidKnights 2019 @SeoulCreate App Easier With SVC Pattern - DroidKnights 2019 @Seoul
Create App Easier With SVC Pattern - DroidKnights 2019 @Seoul
 
[NEXT] Andorid에 MVC 패턴 적용하기
[NEXT] Andorid에 MVC 패턴 적용하기[NEXT] Andorid에 MVC 패턴 적용하기
[NEXT] Andorid에 MVC 패턴 적용하기
 
Backbone 발표
Backbone 발표Backbone 발표
Backbone 발표
 
[KAU UMC 컨퍼런스] Java 기반 Web의 역사 - 김준기
[KAU UMC 컨퍼런스] Java 기반 Web의 역사 - 김준기[KAU UMC 컨퍼런스] Java 기반 Web의 역사 - 김준기
[KAU UMC 컨퍼런스] Java 기반 Web의 역사 - 김준기
 
주니어 입장에서 바라보는 디자인패턴 & 아키텍쳐.pdf
주니어 입장에서 바라보는 디자인패턴 & 아키텍쳐.pdf주니어 입장에서 바라보는 디자인패턴 & 아키텍쳐.pdf
주니어 입장에서 바라보는 디자인패턴 & 아키텍쳐.pdf
 
[웹기반시스템 3조]e govframe 중간고사 제출 정리
[웹기반시스템 3조]e govframe 중간고사 제출 정리[웹기반시스템 3조]e govframe 중간고사 제출 정리
[웹기반시스템 3조]e govframe 중간고사 제출 정리
 
iOS Architecture.pdf
iOS Architecture.pdfiOS Architecture.pdf
iOS Architecture.pdf
 
Mvc 패턴
Mvc 패턴Mvc 패턴
Mvc 패턴
 
신입 웹 개발자 포트폴리오 / 댓글 게시판
신입 웹 개발자 포트폴리오 / 댓글 게시판신입 웹 개발자 포트폴리오 / 댓글 게시판
신입 웹 개발자 포트폴리오 / 댓글 게시판
 
유엔진 오픈소스 클라우드 플랫폼 (uEngine Microservice architecture Platform)
유엔진 오픈소스 클라우드 플랫폼 (uEngine Microservice architecture Platform)유엔진 오픈소스 클라우드 플랫폼 (uEngine Microservice architecture Platform)
유엔진 오픈소스 클라우드 플랫폼 (uEngine Microservice architecture Platform)
 
[스프링 스터디 3일차] @MVC
[스프링 스터디 3일차] @MVC[스프링 스터디 3일차] @MVC
[스프링 스터디 3일차] @MVC
 
Basic.pptx
Basic.pptxBasic.pptx
Basic.pptx
 
[NEXT] 화면 재갱신이 되는 안드로이드 앱 만들기 - 네트워크에 독립하는 구조로 변경
[NEXT] 화면 재갱신이 되는 안드로이드 앱 만들기 - 네트워크에 독립하는 구조로 변경[NEXT] 화면 재갱신이 되는 안드로이드 앱 만들기 - 네트워크에 독립하는 구조로 변경
[NEXT] 화면 재갱신이 되는 안드로이드 앱 만들기 - 네트워크에 독립하는 구조로 변경
 
[Td 2015]각이 다른 mvc6! 그 여섯 번째 이야기!(최지훈)
[Td 2015]각이 다른 mvc6! 그 여섯 번째 이야기!(최지훈)[Td 2015]각이 다른 mvc6! 그 여섯 번째 이야기!(최지훈)
[Td 2015]각이 다른 mvc6! 그 여섯 번째 이야기!(최지훈)
 
마이크로서비스를 위한 AWS 아키텍처 패턴 및 모범 사례 - AWS Summit Seoul 2017
마이크로서비스를 위한 AWS 아키텍처 패턴 및 모범 사례 - AWS Summit Seoul 2017마이크로서비스를 위한 AWS 아키텍처 패턴 및 모범 사례 - AWS Summit Seoul 2017
마이크로서비스를 위한 AWS 아키텍처 패턴 및 모범 사례 - AWS Summit Seoul 2017
 
Cloud-Barista 제2차 오픈 컨퍼런스 : CB-Waterstrider-멀티 클라우드 서비스 공통 플랫폼 웹도구(Cloud-Bari...
Cloud-Barista 제2차 오픈 컨퍼런스 : CB-Waterstrider-멀티 클라우드 서비스 공통 플랫폼 웹도구(Cloud-Bari...Cloud-Barista 제2차 오픈 컨퍼런스 : CB-Waterstrider-멀티 클라우드 서비스 공통 플랫폼 웹도구(Cloud-Bari...
Cloud-Barista 제2차 오픈 컨퍼런스 : CB-Waterstrider-멀티 클라우드 서비스 공통 플랫폼 웹도구(Cloud-Bari...
 
1.스프링프레임워크 개요
1.스프링프레임워크 개요1.스프링프레임워크 개요
1.스프링프레임워크 개요
 

More from 구 봉

웹기반마지막과제
웹기반마지막과제웹기반마지막과제
웹기반마지막과제구 봉
 
Moodle install
Moodle installMoodle install
Moodle install구 봉
 
Moodle install
Moodle installMoodle install
Moodle install구 봉
 
Moodle install
Moodle installMoodle install
Moodle install구 봉
 
[웹기반시스템 3조]wamp my sql db
[웹기반시스템 3조]wamp my sql db[웹기반시스템 3조]wamp my sql db
[웹기반시스템 3조]wamp my sql db구 봉
 
[웹기반시스템 3조]e govframe
[웹기반시스템 3조]e govframe[웹기반시스템 3조]e govframe
[웹기반시스템 3조]e govframe구 봉
 

More from 구 봉 (6)

웹기반마지막과제
웹기반마지막과제웹기반마지막과제
웹기반마지막과제
 
Moodle install
Moodle installMoodle install
Moodle install
 
Moodle install
Moodle installMoodle install
Moodle install
 
Moodle install
Moodle installMoodle install
Moodle install
 
[웹기반시스템 3조]wamp my sql db
[웹기반시스템 3조]wamp my sql db[웹기반시스템 3조]wamp my sql db
[웹기반시스템 3조]wamp my sql db
 
[웹기반시스템 3조]e govframe
[웹기반시스템 3조]e govframe[웹기반시스템 3조]e govframe
[웹기반시스템 3조]e govframe
 

[웹기반시스템 3조] mvc

  • 1. Group No.3 2010360305 구본환 2010360313 이가혜 2010360317 정우현 Model View Controller
  • 2. MVC KUCIN • Model : 어플리케이션의 데이터와 비즈니스 로직을 담는 객체이다. • View : Model의 정보를 사용자에게 표시한다. 하나의 Model을 다양한 View에서 사용할 수 있다. • Controller : Model과 View의 중계역할로 view를 선택한다. 사용자의 요청을 받아 Model에 변경된 상태를 반영하고, 응답
  • 3. HSQLDB Connection KUCIN – MVC 패턴은 UI 코드와 비즈니스 코드를 분리함으로써 종속성을 줄이고, 재사용성을 높이고, 보다 쉬운 변경이 가능하도록 한다. – 전자정부프레임워크에서 “MVC 서비스”란 MVC 패턴을 활용한 Web MVC Framework를 의미한다.
  • 6. web.xml .do라는 URL패턴이 들어오면 DispatcherServlet가 요청을 처리하게 됩니다. DispatcherServlet은 /WEB-INF/config/egovframework/springmvc/dispatcher- servlet.xml 파일에 설정되어 있습니다.
  • 8. Spring MVC - DispatcherServlet DispatcherServlet은 스프링MVC의 웹요청을 처리하는 전 과정을 관리하는 전달자로 요청에 따른 컨트롤러를 구해 처리된 결과를 클라이언트에게 응답하는 스프링MVC의 핵심 - HandlerMapping 웹요청시 해당 URL을 어떤 Controller가 처리할지 검색하여 DispatcherServlet에 전달 - Controller 클라이언트의 요청을 처리한다. 결과 데이터를 ModelAndView에 반영하고 DispatcherServlet에 전달 - ModelAndView 컨트롤러가 처리한 결과와 View에 대한 정보를 가진다. - ViewResolver 결과를 생성할 View 를 결정한다. - View 결과 데이터인 Model 객체를 display한다.
  • 9. Spring MVC 처리과정 1. 클라이언트의 요청이 DispatcherServlet에 전달 2. DispatcherServlet은 HandlerMapping에게 클라이언트의 요청을 처리할 컨트롤러 객체를 요청 3. HandlerMapping은 요청을 처리할 컨트롤러를 DispatcherServlet에 알려준다. 4. DispatcherServlet은 해당 Controller에 처리를 요청 5. Controller는 처리결과 및 view정보를 ModelAndView에 담아 DispatcherServlet에 전달
  • 10. Spring MVC 처리과정 6. DispatcherServlet은 처리결과를 생성할 View를 구하기 위해 ViewResolver에 요청 7. ViewResolver는 처리결과를 생성할 View를 DispatcherServlet에 전달 8. DispatcherServlet은 View에 응답생성을 요청 9. View는 클라이언트에 전송할 응답을 생성
  • 11. Thank youGroup No.3 MVC(Model View Controller) Group No.3 2010360305 구본환 2010360313 이가혜 2010360317 정우현
  • 14. MVC는 피자 [참고] M이 Model M은 '토핑„ 피자의 맛 이를테면 하와이안인지 페페로니인지 불고기인지 결정하는건 '토핑„ MVC가 최종적으로 사용자에게 보여지는건 Model이 결정. 모델은 쉽게 말하면 데이터야. 전화받는 알바생이 피자 만드는 알바생한테 '포테이토 피자에 치즈크러스터' 이렇게 주문. Controller역할을 하는 피자 만드는 알바생이 피자로 만든다. 전화를 받는 알바생'은 Dispatcher에 해당 사용자로부터 요청이 들어오면 Controller한테 요청한 '고르곤 졸라 피자에 고구마 무스'를 피자 만드는 알바생한테 전달해주는 역할. 물론 디스패쳐라는 사용자의 요청을 전달 뿐만 아니라 Controller가 만들어준 피자를 오토바이 타고 배달까지 해주는 '피자 배달 알바생'역할도 한다. 그러면 최종적으로 받는 결과물은 Controller가 조합을 해준 MV.