SlideShare a Scribd company logo
1 of 30
왜?따위는 없는..
있는 그대로만 살펴보는
쉬운 SpringMVC
사용자 View Dispatcher
Servlet
context-mvc
.xml
Controller Member
Service
Member
Dao
SqlMap
Client
Template
SqlMap
Config
.xml
Member
.xml
submit
/member/list
getController
list
list
list
queryForList
getQuery
getQuery
@Autowired
@Autowired
@Autowired
@Controller
사용자가 회원 목록 한 번 조회하면
SpringMVC를 쓰는 웹 애플리케이션에서는
대략 9명 이상이 등장해서
이처럼 난리 법석을 떤다.
왜 이렇게까지 복잡해야돼?
치고 일단 있는 그대로 알아보기나 하자..
DispatcherServlet
무슨 역할?
웹 애플리케이션의 최전방에서
사용자의 요청을 접수하여
URL을 기준으로
요청을 처리할 Controller를
정해진 XML에서 찾고
그 Controller에 처리를 위임하고 결과를 받아서
사용자에게 처리 결과가 담긴 화면 제공
DispatcherServlet
쉽게?
ARS..
누가 어떤 일을 할 줄 아는 지만 알고 있다.
그래서 어떤 일이 생기면 그거 잘 하는 넘에게 전달.
한식 주문이면 한식 담당 접수계에게,
일식 주문이면 일식 담당 접수계에게 연결.
Spring에서 제공되는 클래스로 소스 코드는 볼 필요 없음
뭐.. 봐봤자 복잡하기만 하겄지..
DispatcherServlet
DispatcherServlet
설정은 어디에?
web.xml 에 설정
기타
정해진 XML(여기서는 context-mvc.xml)의 정보 활용
사용자 요청을 처리할 Controller 목록과
사용자에게 보여줄 화면을 찾는 ViewResolver
직접 코딩하지 않고 Spring에서 제공하는 Servlet 재사용
context-mvc.xml
무슨 역할?
DispatcherServlet에게 아래의 정보를 제공한다.
사용자의 요청을 처리할 수 있는 Controller 목록과
사용자에게 보여줄 화면 URL을 만드는 ViewResolver
context-mvc.xml
컨트롤러 목록
ViewResolver
Controller
무슨 역할?
DispatcherServlet에 의해 호출되어
사용자의 Request를 전달받고,
해당 요청의 비즈니스 처리를 담당하는 서비스 객체를
Spring으로부터 주입(Dependency Injection)받아서,
그 서비스 객체에 처리를 위임하고,
처리 결과와 결과 화면에 대한 정보를
DispatcherServlet에게 반환한다.
Controller
쉽게?
한식/일식/중식/… 접수계..
한식 접수계에서는 주문을 검증하고, 한식 주방에 주문
한식 요리가 나오면 배송지 태그 부착
일식 접수계에서는 주문을 검증하고, 일식 주방에 주문
일식 요리가 나오면 배송지 태그 부착
Controller
@Controller, @RequestMapping, @Autowired
서비스 처리 결과를 Model에 담으면,
컨트롤러 클래스의 RequestMapping값(/member)과
핸들러 메서드의 RequestMapping값(/list)을 기준으로,
DispatcherServlet이 ViewResolver를 통해 화면 URL 생성
Controller
설정은 어디에?
DispatcherServlet이 참조하는 XML(여기서는 context-
mvc.xml)에 설정
@Controller만 여기에서 Bean으로 등록
Service
무슨 역할?
Controller에 의해 호출되어
실제 비즈니스 로직과 트랜잭션을 처리하고,
DB CRUD(Persistence)를 담당하는 DAO 객체를 Spring
으로부터 주입 받아서,
DAO에 DB CRUD 처리를 위임하고,
처리 결과를 Controller에게 반환한다.
Service
쉽게?
한식/일식/중식… 주방..
가장 중요한 결과물인 요리를 만들어낸다.
기록을 남기기 위해 요리 장부도 작성한다.
Service
@Service, @Transactional, @Autowired
비즈니스 로직과 트랜잭션 처리
Service
설정은 어디에?
ApplicationContext.xml
@Controller가 아닌 @Service, @Repository 등은
모두 여기에서 Bean으로 등록
DAO
무슨 역할?
Service에 의해 호출되어
쿼리를 담당하는 SqlMapClientTemplate 객체를
Spring으로부터 주입받아서,
SqlMapClientTemplate 객체에 쿼리 수행을 위임하고,
처리 결과를 Service에게 반환한다.
DAO
쉽게?
한식/일식/중식… 요리 메모 작성..
기록을 남기기 위해 요리 메모를 작성한다.
DAO
@Repository, @Autowired
SqlMapClientTemplate을 통해 쿼리 수행 후 결과 반환
DAO
설정은 어디에?
ApplicationContext.xml
@Controller가 아닌 @Service, @Repository 등은
모두 여기에서 Bean으로 등록
SqlMapClientTemplate
무슨 역할?
DAO에 의해 호출되어
SqlMapConfig.xml 의 정보를 이용해서
실제 쿼리문을 읽어와서
CRUD 수행 후
결과를 반환한다.
쉽게?
한식/일식/중식… 요리 장부 작성..
기록을 남기기 위해 요리 메모를 토대로
요리 내용을 정식으로 장부에 작성한다.
SqlMapClientTemplate
Spring에서 제공되는 클래스로 소스 코드는 볼 필요 없음
DB에 CRUD를 해야하니 지금까지 나온 적이 없는
DataSource 정보를 이놈이 가지고 있을테고
실제 쿼리 수행하는 코드가 있겄지..
SqlMapClientTemplate
설정은 어디에?
ApplicationContext.xml
SqlMapClientTemplate
SqlMapClient에 의해 생성되고,
SqlMapClient가 DataSource 정보를
SqlMapClientTemplate에 전달
ApplicationContext.xml
SqlMapConfig.xml
무슨 역할?
SqlMapClient에게 아래의 정보를 제공한다.
비즈니스 도메인 별 쿼리가 저장된 xml 파일 정보
SqlMapConfig.xml
Member.xml
무슨 역할?
비즈니스 도메인 별 실제 쿼리 저장
Member.xml
사용자 View Dispatcher
Servlet
context-mvc
.xml
Controller Member
Service
Member
Dao
SqlMap
Client
Template
SqlMap
Config
.xml
Member
.xml
submit
/member/list
getController
list
list
list
queryForList
getQuery
getQuery
@Autowired
@Autowired
@Autowired
@Controller
이제 최소한 역할과
어디에서 뭘 어떻게 설정하는지는 이해 했으니
이 시점에서 한 번 더 보면
SpringMVC의 전체 Flow는 감이 와야 되는거다..
왜?는 다음에..
참고 자료
쉽게 따라하는 자바 웹개발
토비의 스프링3

More Related Content

What's hot

우아한 객체지향
우아한 객체지향우아한 객체지향
우아한 객체지향Young-Ho Cho
 
Migration Spring Boot PetClinic REST to Quarkus 1.2.0
Migration Spring Boot PetClinic REST to Quarkus 1.2.0Migration Spring Boot PetClinic REST to Quarkus 1.2.0
Migration Spring Boot PetClinic REST to Quarkus 1.2.0Jonathan Vila
 
하이퍼커넥트 데이터 팀이 데이터 증가에 대처해온 기록
하이퍼커넥트 데이터 팀이 데이터 증가에 대처해온 기록하이퍼커넥트 데이터 팀이 데이터 증가에 대처해온 기록
하이퍼커넥트 데이터 팀이 데이터 증가에 대처해온 기록Jaehyeuk Oh
 
NDC2018 안드로이드+유니티 네이티브 프로파일링 삽질기
NDC2018 안드로이드+유니티 네이티브 프로파일링 삽질기NDC2018 안드로이드+유니티 네이티브 프로파일링 삽질기
NDC2018 안드로이드+유니티 네이티브 프로파일링 삽질기Jaeseung Ha
 
[GPG스터디] 1.0 데이터 주도적 설계의 마법
[GPG스터디] 1.0 데이터 주도적 설계의 마법[GPG스터디] 1.0 데이터 주도적 설계의 마법
[GPG스터디] 1.0 데이터 주도적 설계의 마법Sehyeon Nam
 
Modern C++ 프로그래머를 위한 CPP11/14 핵심
Modern C++ 프로그래머를 위한 CPP11/14 핵심Modern C++ 프로그래머를 위한 CPP11/14 핵심
Modern C++ 프로그래머를 위한 CPP11/14 핵심흥배 최
 
[NDC2017] 뛰는 프로그래머 나는 언리얼 엔진 - 언알못에서 커미터까지
[NDC2017] 뛰는 프로그래머 나는 언리얼 엔진 - 언알못에서 커미터까지[NDC2017] 뛰는 프로그래머 나는 언리얼 엔진 - 언알못에서 커미터까지
[NDC2017] 뛰는 프로그래머 나는 언리얼 엔진 - 언알못에서 커미터까지Minjung Ko
 
훌륭한 개발자로 성장하기
훌륭한 개발자로 성장하기훌륭한 개발자로 성장하기
훌륭한 개발자로 성장하기Changyol BAEK
 
NAVER TECH CONCERT_FE2019_오늘부터 나도 FE 성능분석가
NAVER TECH CONCERT_FE2019_오늘부터 나도 FE 성능분석가NAVER TECH CONCERT_FE2019_오늘부터 나도 FE 성능분석가
NAVER TECH CONCERT_FE2019_오늘부터 나도 FE 성능분석가NAVER Engineering
 
Specification-By-Example with Gherkin
Specification-By-Example with GherkinSpecification-By-Example with Gherkin
Specification-By-Example with GherkinChristian Hassa
 
الجزء الخامس والعشرون
الجزء الخامس والعشرونالجزء الخامس والعشرون
الجزء الخامس والعشرونMohammad Ihmeidan
 
이벤트 기반 분산 시스템을 향한 여정
이벤트 기반 분산 시스템을 향한 여정이벤트 기반 분산 시스템을 향한 여정
이벤트 기반 분산 시스템을 향한 여정Arawn Park
 
SK플래닛_README_마이크로서비스 아키텍처로 개발하기
SK플래닛_README_마이크로서비스 아키텍처로 개발하기SK플래닛_README_마이크로서비스 아키텍처로 개발하기
SK플래닛_README_마이크로서비스 아키텍처로 개발하기Lee Ji Eun
 
The walking dead 13
The walking dead 13 The walking dead 13
The walking dead 13 Azhroth B.S
 
NDC2017 언리얼엔진4 디버깅 101 - 게임 기획자, 프로그래머가 버그와 만났을 때 사용할 수 있는 지침들
NDC2017 언리얼엔진4 디버깅 101 - 게임 기획자, 프로그래머가 버그와 만났을 때 사용할 수 있는 지침들NDC2017 언리얼엔진4 디버깅 101 - 게임 기획자, 프로그래머가 버그와 만났을 때 사용할 수 있는 지침들
NDC2017 언리얼엔진4 디버깅 101 - 게임 기획자, 프로그래머가 버그와 만났을 때 사용할 수 있는 지침들영욱 오
 
Brick 305 - инструкция по сборке конструктора "Пиратский замок" (Лего-совмест...
Brick 305 - инструкция по сборке конструктора "Пиратский замок" (Лего-совмест...Brick 305 - инструкция по сборке конструктора "Пиратский замок" (Лего-совмест...
Brick 305 - инструкция по сборке конструктора "Пиратский замок" (Лего-совмест...Сезон Продаж
 
REST API Development with Spring
REST API Development with SpringREST API Development with Spring
REST API Development with SpringKeesun Baik
 
Python Programming ADP VTU CSE 18CS55 Module 2 Chapter 5
Python Programming ADP VTU CSE 18CS55 Module 2 Chapter 5Python Programming ADP VTU CSE 18CS55 Module 2 Chapter 5
Python Programming ADP VTU CSE 18CS55 Module 2 Chapter 5Demian Antony DMello
 
The Walking Dead volume 1
The Walking Dead volume 1The Walking Dead volume 1
The Walking Dead volume 1dmxallen
 

What's hot (20)

우아한 객체지향
우아한 객체지향우아한 객체지향
우아한 객체지향
 
Migration Spring Boot PetClinic REST to Quarkus 1.2.0
Migration Spring Boot PetClinic REST to Quarkus 1.2.0Migration Spring Boot PetClinic REST to Quarkus 1.2.0
Migration Spring Boot PetClinic REST to Quarkus 1.2.0
 
하이퍼커넥트 데이터 팀이 데이터 증가에 대처해온 기록
하이퍼커넥트 데이터 팀이 데이터 증가에 대처해온 기록하이퍼커넥트 데이터 팀이 데이터 증가에 대처해온 기록
하이퍼커넥트 데이터 팀이 데이터 증가에 대처해온 기록
 
NDC2018 안드로이드+유니티 네이티브 프로파일링 삽질기
NDC2018 안드로이드+유니티 네이티브 프로파일링 삽질기NDC2018 안드로이드+유니티 네이티브 프로파일링 삽질기
NDC2018 안드로이드+유니티 네이티브 프로파일링 삽질기
 
[GPG스터디] 1.0 데이터 주도적 설계의 마법
[GPG스터디] 1.0 데이터 주도적 설계의 마법[GPG스터디] 1.0 데이터 주도적 설계의 마법
[GPG스터디] 1.0 데이터 주도적 설계의 마법
 
Modern C++ 프로그래머를 위한 CPP11/14 핵심
Modern C++ 프로그래머를 위한 CPP11/14 핵심Modern C++ 프로그래머를 위한 CPP11/14 핵심
Modern C++ 프로그래머를 위한 CPP11/14 핵심
 
[NDC2017] 뛰는 프로그래머 나는 언리얼 엔진 - 언알못에서 커미터까지
[NDC2017] 뛰는 프로그래머 나는 언리얼 엔진 - 언알못에서 커미터까지[NDC2017] 뛰는 프로그래머 나는 언리얼 엔진 - 언알못에서 커미터까지
[NDC2017] 뛰는 프로그래머 나는 언리얼 엔진 - 언알못에서 커미터까지
 
훌륭한 개발자로 성장하기
훌륭한 개발자로 성장하기훌륭한 개발자로 성장하기
훌륭한 개발자로 성장하기
 
NAVER TECH CONCERT_FE2019_오늘부터 나도 FE 성능분석가
NAVER TECH CONCERT_FE2019_오늘부터 나도 FE 성능분석가NAVER TECH CONCERT_FE2019_오늘부터 나도 FE 성능분석가
NAVER TECH CONCERT_FE2019_오늘부터 나도 FE 성능분석가
 
Specification-By-Example with Gherkin
Specification-By-Example with GherkinSpecification-By-Example with Gherkin
Specification-By-Example with Gherkin
 
Java logging
Java loggingJava logging
Java logging
 
الجزء الخامس والعشرون
الجزء الخامس والعشرونالجزء الخامس والعشرون
الجزء الخامس والعشرون
 
이벤트 기반 분산 시스템을 향한 여정
이벤트 기반 분산 시스템을 향한 여정이벤트 기반 분산 시스템을 향한 여정
이벤트 기반 분산 시스템을 향한 여정
 
SK플래닛_README_마이크로서비스 아키텍처로 개발하기
SK플래닛_README_마이크로서비스 아키텍처로 개발하기SK플래닛_README_마이크로서비스 아키텍처로 개발하기
SK플래닛_README_마이크로서비스 아키텍처로 개발하기
 
The walking dead 13
The walking dead 13 The walking dead 13
The walking dead 13
 
NDC2017 언리얼엔진4 디버깅 101 - 게임 기획자, 프로그래머가 버그와 만났을 때 사용할 수 있는 지침들
NDC2017 언리얼엔진4 디버깅 101 - 게임 기획자, 프로그래머가 버그와 만났을 때 사용할 수 있는 지침들NDC2017 언리얼엔진4 디버깅 101 - 게임 기획자, 프로그래머가 버그와 만났을 때 사용할 수 있는 지침들
NDC2017 언리얼엔진4 디버깅 101 - 게임 기획자, 프로그래머가 버그와 만났을 때 사용할 수 있는 지침들
 
Brick 305 - инструкция по сборке конструктора "Пиратский замок" (Лего-совмест...
Brick 305 - инструкция по сборке конструктора "Пиратский замок" (Лего-совмест...Brick 305 - инструкция по сборке конструктора "Пиратский замок" (Лего-совмест...
Brick 305 - инструкция по сборке конструктора "Пиратский замок" (Лего-совмест...
 
REST API Development with Spring
REST API Development with SpringREST API Development with Spring
REST API Development with Spring
 
Python Programming ADP VTU CSE 18CS55 Module 2 Chapter 5
Python Programming ADP VTU CSE 18CS55 Module 2 Chapter 5Python Programming ADP VTU CSE 18CS55 Module 2 Chapter 5
Python Programming ADP VTU CSE 18CS55 Module 2 Chapter 5
 
The Walking Dead volume 1
The Walking Dead volume 1The Walking Dead volume 1
The Walking Dead volume 1
 

Similar to SpringMVC 전체 흐름 알아보기

04.실행환경 교육교재(화면처리)
04.실행환경 교육교재(화면처리)04.실행환경 교육교재(화면처리)
04.실행환경 교육교재(화면처리)Hankyo
 
WAS의 동작과 WEB, Servlet, JSP_Wh apm
WAS의 동작과 WEB, Servlet, JSP_Wh apmWAS의 동작과 WEB, Servlet, JSP_Wh apm
WAS의 동작과 WEB, Servlet, JSP_Wh apm엑셈
 
Mvc 패턴
Mvc 패턴Mvc 패턴
Mvc 패턴Seokju Hong
 
웹(자바기준)의 전반적인 이해
웹(자바기준)의 전반적인 이해웹(자바기준)의 전반적인 이해
웹(자바기준)의 전반적인 이해JAEHYUN LIM
 
[KAU UMC 컨퍼런스] Java 기반 Web의 역사 - 김준기
[KAU UMC 컨퍼런스] Java 기반 Web의 역사 - 김준기[KAU UMC 컨퍼런스] Java 기반 Web의 역사 - 김준기
[KAU UMC 컨퍼런스] Java 기반 Web의 역사 - 김준기JunGi Kim
 
#22.스프링프레임워크 & 마이바티스 (Spring Framework, MyBatis)_스프링프레임워크 강좌, 재직자환급교육,실업자국비지원...
#22.스프링프레임워크 & 마이바티스 (Spring Framework, MyBatis)_스프링프레임워크 강좌, 재직자환급교육,실업자국비지원...#22.스프링프레임워크 & 마이바티스 (Spring Framework, MyBatis)_스프링프레임워크 강좌, 재직자환급교육,실업자국비지원...
#22.스프링프레임워크 & 마이바티스 (Spring Framework, MyBatis)_스프링프레임워크 강좌, 재직자환급교육,실업자국비지원...탑크리에듀(구로디지털단지역3번출구 2분거리)
 
XECon2015 :: [2-2] 박상현 - React로 개발하는 SPA 실무 이야기
XECon2015 :: [2-2] 박상현 - React로 개발하는 SPA 실무 이야기XECon2015 :: [2-2] 박상현 - React로 개발하는 SPA 실무 이야기
XECon2015 :: [2-2] 박상현 - React로 개발하는 SPA 실무 이야기XpressEngine
 
[웹기반시스템 3조]e govframe 중간고사 제출 정리
[웹기반시스템 3조]e govframe 중간고사 제출 정리[웹기반시스템 3조]e govframe 중간고사 제출 정리
[웹기반시스템 3조]e govframe 중간고사 제출 정리구 봉
 
HOONS닷넷 오픈소스 프로젝트 Part1.
HOONS닷넷 오픈소스 프로젝트 Part1.HOONS닷넷 오픈소스 프로젝트 Part1.
HOONS닷넷 오픈소스 프로젝트 Part1.Hojin Jun
 
[웹기반시스템 3조] mvc
[웹기반시스템 3조] mvc[웹기반시스템 3조] mvc
[웹기반시스템 3조] mvc구 봉
 
Spring mvc
Spring mvcSpring mvc
Spring mvcksain
 
Java rmi 개발 가이드
Java rmi 개발 가이드Java rmi 개발 가이드
Java rmi 개발 가이드중선 곽
 
[오픈소스컨설팅]Spring MVC
[오픈소스컨설팅]Spring MVC [오픈소스컨설팅]Spring MVC
[오픈소스컨설팅]Spring MVC Ji-Woong Choi
 
NET 최선단 기술에 의한 고성능 웹 애플리케이션
NET 최선단 기술에 의한 고성능 웹 애플리케이션NET 최선단 기술에 의한 고성능 웹 애플리케이션
NET 최선단 기술에 의한 고성능 웹 애플리케이션흥배 최
 
[NEXT] 화면 재갱신이 되는 안드로이드 앱 만들기 - 네트워크에 독립하는 구조로 변경
[NEXT] 화면 재갱신이 되는 안드로이드 앱 만들기 - 네트워크에 독립하는 구조로 변경[NEXT] 화면 재갱신이 되는 안드로이드 앱 만들기 - 네트워크에 독립하는 구조로 변경
[NEXT] 화면 재갱신이 되는 안드로이드 앱 만들기 - 네트워크에 독립하는 구조로 변경YoungSu Son
 
[스프링 스터디 2일차] 서비스 추상화
[스프링 스터디 2일차] 서비스 추상화[스프링 스터디 2일차] 서비스 추상화
[스프링 스터디 2일차] 서비스 추상화AnselmKim
 
MVVM Pattern for Android
MVVM Pattern for AndroidMVVM Pattern for Android
MVVM Pattern for Androidtaeinkim6
 
Spring integration을 통해_살펴본_메시징_세계
Spring integration을 통해_살펴본_메시징_세계Spring integration을 통해_살펴본_메시징_세계
Spring integration을 통해_살펴본_메시징_세계Wangeun Lee
 

Similar to SpringMVC 전체 흐름 알아보기 (20)

04.실행환경 교육교재(화면처리)
04.실행환경 교육교재(화면처리)04.실행환경 교육교재(화면처리)
04.실행환경 교육교재(화면처리)
 
WAS의 동작과 WEB, Servlet, JSP_Wh apm
WAS의 동작과 WEB, Servlet, JSP_Wh apmWAS의 동작과 WEB, Servlet, JSP_Wh apm
WAS의 동작과 WEB, Servlet, JSP_Wh apm
 
Mvc 패턴
Mvc 패턴Mvc 패턴
Mvc 패턴
 
웹(자바기준)의 전반적인 이해
웹(자바기준)의 전반적인 이해웹(자바기준)의 전반적인 이해
웹(자바기준)의 전반적인 이해
 
[KAU UMC 컨퍼런스] Java 기반 Web의 역사 - 김준기
[KAU UMC 컨퍼런스] Java 기반 Web의 역사 - 김준기[KAU UMC 컨퍼런스] Java 기반 Web의 역사 - 김준기
[KAU UMC 컨퍼런스] Java 기반 Web의 역사 - 김준기
 
Presentation1
Presentation1Presentation1
Presentation1
 
#22.스프링프레임워크 & 마이바티스 (Spring Framework, MyBatis)_스프링프레임워크 강좌, 재직자환급교육,실업자국비지원...
#22.스프링프레임워크 & 마이바티스 (Spring Framework, MyBatis)_스프링프레임워크 강좌, 재직자환급교육,실업자국비지원...#22.스프링프레임워크 & 마이바티스 (Spring Framework, MyBatis)_스프링프레임워크 강좌, 재직자환급교육,실업자국비지원...
#22.스프링프레임워크 & 마이바티스 (Spring Framework, MyBatis)_스프링프레임워크 강좌, 재직자환급교육,실업자국비지원...
 
XECon2015 :: [2-2] 박상현 - React로 개발하는 SPA 실무 이야기
XECon2015 :: [2-2] 박상현 - React로 개발하는 SPA 실무 이야기XECon2015 :: [2-2] 박상현 - React로 개발하는 SPA 실무 이야기
XECon2015 :: [2-2] 박상현 - React로 개발하는 SPA 실무 이야기
 
[웹기반시스템 3조]e govframe 중간고사 제출 정리
[웹기반시스템 3조]e govframe 중간고사 제출 정리[웹기반시스템 3조]e govframe 중간고사 제출 정리
[웹기반시스템 3조]e govframe 중간고사 제출 정리
 
HOONS닷넷 오픈소스 프로젝트 Part1.
HOONS닷넷 오픈소스 프로젝트 Part1.HOONS닷넷 오픈소스 프로젝트 Part1.
HOONS닷넷 오픈소스 프로젝트 Part1.
 
[웹기반시스템 3조] mvc
[웹기반시스템 3조] mvc[웹기반시스템 3조] mvc
[웹기반시스템 3조] mvc
 
Spring mvc
Spring mvcSpring mvc
Spring mvc
 
Java rmi 개발 가이드
Java rmi 개발 가이드Java rmi 개발 가이드
Java rmi 개발 가이드
 
[오픈소스컨설팅]Spring MVC
[오픈소스컨설팅]Spring MVC [오픈소스컨설팅]Spring MVC
[오픈소스컨설팅]Spring MVC
 
스프링 마이바티스 무료강의 / 챕터5. 스프링 트랜잭션(Spring Transaction)
스프링 마이바티스 무료강의 / 챕터5. 스프링 트랜잭션(Spring Transaction)스프링 마이바티스 무료강의 / 챕터5. 스프링 트랜잭션(Spring Transaction)
스프링 마이바티스 무료강의 / 챕터5. 스프링 트랜잭션(Spring Transaction)
 
NET 최선단 기술에 의한 고성능 웹 애플리케이션
NET 최선단 기술에 의한 고성능 웹 애플리케이션NET 최선단 기술에 의한 고성능 웹 애플리케이션
NET 최선단 기술에 의한 고성능 웹 애플리케이션
 
[NEXT] 화면 재갱신이 되는 안드로이드 앱 만들기 - 네트워크에 독립하는 구조로 변경
[NEXT] 화면 재갱신이 되는 안드로이드 앱 만들기 - 네트워크에 독립하는 구조로 변경[NEXT] 화면 재갱신이 되는 안드로이드 앱 만들기 - 네트워크에 독립하는 구조로 변경
[NEXT] 화면 재갱신이 되는 안드로이드 앱 만들기 - 네트워크에 독립하는 구조로 변경
 
[스프링 스터디 2일차] 서비스 추상화
[스프링 스터디 2일차] 서비스 추상화[스프링 스터디 2일차] 서비스 추상화
[스프링 스터디 2일차] 서비스 추상화
 
MVVM Pattern for Android
MVVM Pattern for AndroidMVVM Pattern for Android
MVVM Pattern for Android
 
Spring integration을 통해_살펴본_메시징_세계
Spring integration을 통해_살펴본_메시징_세계Spring integration을 통해_살펴본_메시징_세계
Spring integration을 통해_살펴본_메시징_세계
 

SpringMVC 전체 흐름 알아보기