<4D F736F F F696E74202D20C1A632C8B8C7D1B1B9BDBAC7C1B8B5BBE7BFEBC0DAB8F0C0D32D496E E D56432E BC8A3C8AF20B8F0B5E55D>

Similar documents
Web Service Computing

파워포인트 템플릿

Spring Boot

Intro to Servlet, EJB, JSP, WS

본 강의에 들어가기 전

제8장 자바 GUI 프로그래밍 II

chapter1,2.doc

슬라이드 1

Microsoft PowerPoint - Smart CRM v4.0_TM 소개_ pptx

<C0CCBCBCBFB52DC1A4B4EBBFF82DBCAEBBE7B3EDB9AE2D D382E687770>

PowerPoint 프레젠테이션

WS12. Security

혼자서일을다하는 JSP. 이젠일을 Servlet 과나눠서한다. JSP와서블릿의표현적인차이 - JSP는 <html> 내에서자바를사용할수있는수단을제공한다. - 서블릿은자바내에서 <html> 을작성할수있는수단을제공한다. - JSP나서블릿으로만웹페이지를작성하면자바와다양한코드가

다른 JSP 페이지호출 forward() 메서드 - 하나의 JSP 페이지실행이끝나고다른 JSP 페이지를호출할때사용한다. 예 ) <% RequestDispatcher dispatcher = request.getrequestdispatcher(" 실행할페이지.jsp");

슬라이드 1

PowerPoint 프레젠테이션

I T C o t e n s P r o v i d e r h t t p : / / w w w. h a n b i t b o o k. c o. k r

MVVM 패턴의 이해

PowerPoint 프레젠테이션

PowerPoint 프레젠테이션

PowerPoint 프레젠테이션

PowerPoint Template

Microsoft PowerPoint - GUI _DB연동.ppt [호환 모드]

Research & Technique Apache Tomcat RCE 취약점 (CVE ) 취약점개요 지난 4월 15일전세계적으로가장많이사용되는웹애플리케이션서버인 Apache Tomcat에서 RCE 취약점이공개되었다. CVE 취약점은 W

컴퓨터과학과 교육목표 컴퓨터과학과의 컴퓨터과학 프로그램은 해당분야 에서 학문적 기술을 창의적으로 연구하고 산업적 기술을 주도적으로 개발하는 우수한 인력을 양성 함과 동시에 직업적 도덕적 책임의식을 갖는 IT인 육성을 교육목표로 한다. 1. 전공 기본 지식을 체계적으로

<4D F736F F F696E74202D20C1A63038C0E520C5ACB7A1BDBABFCD20B0B4C3BC4928B0ADC0C729205BC8A3C8AF20B8F0B5E55D>

Domino Designer Portal Development tools Rational Application Developer WebSphere Portlet Factory Workplace Designer Workplace Forms Designer

JAVA PROGRAMMING 실습 08.다형성

중간고사

2014밝고고운동요부르기-수정3

2005프로그램표지

Eclipse 와 Firefox 를이용한 Javascript 개발 발표자 : 문경대 11 년 10 월 26 일수요일

Web Application을 구성하는 패턴과 Spring ROO의 사례

뇌를 자극하는 JSP & Servlet 슬라이드

(jpetstore \277\271\301\246\267\316 \273\354\306\354\272\270\264\302 Spring MVC\277\315 iBatis \277\254\265\277 - Confluence)

SproutCore에 홀딱 반했습니다.

<4D F736F F F696E74202D20B5A5C0CCC5CDBAA3C0CCBDBA5F3130C1D6C2F75F32C2F7BDC32E >

슬라이드 1

Spring 3의 JSR 303 지원

<30342DBCF6C3B3B8AEBDC3BCB33228C3D6C1BE292E687770>

PowerPoint Presentation

Microsoft PowerPoint - 04-UDP Programming.ppt

PowerPoint Presentation

SQL Developer Connect to TimesTen 유니원아이앤씨 DB 기술지원팀 2010 년 07 월 28 일 문서정보 프로젝트명 SQL Developer Connect to TimesTen 서브시스템명 버전 1.0 문서명 작성일 작성자

표준프레임워크로 구성된 컨텐츠를 솔루션에 적용하는 것에 문제가 없는지 확인

Microsoft PowerPoint - 11주차_Android_GoogleMap.ppt [호환 모드]

<property name="configlocation" value="classpath:/egovframework/sqlmap/example/sql-map-config.xml"/> <property name="datasource" ref="datasource2"/> *

<4D F736F F F696E74202D203130C0E52EBFA1B7AF20C3B3B8AE205BC8A3C8AF20B8F0B5E55D>

ibmdw_rest_v1.0.ppt

Microsoft PowerPoint - aj-lecture1.ppt [호환 모드]

Apache2 + Tomcat 5 + JK2 를 사용한 로드밸런싱과 세션 복제 클러스터링 사이트 구축

PowerPoint 프레젠테이션

PowerPoint Presentation

Microsoft PowerPoint - aj-lecture7.ppt [호환 모드]

Microsoft PowerPoint - CSharp-10-예외처리

Microsoft PowerPoint - web-part03-ch19-node.js기본.pptx

Microsoft PowerPoint - Supplement-03-TCP Programming.ppt [호환 모드]

Web Scraper in 30 Minutes 강철

No Slide Title

Microsoft PowerPoint Android-SDK설치.HelloAndroid(1.0h).pptx

제11장 프로세스와 쓰레드

Microsoft PowerPoint - 03-TCP Programming.ppt

슬라이드 1

¾Æ½Ã¾ÆÀú³Î8È£-ÅëÇÕ

슬라이드 1

PowerPoint Presentation

JAVA 프로그래밍실습 실습 1) 실습목표 - 메소드개념이해하기 - 매개변수이해하기 - 새메소드만들기 - Math 클래스의기존메소드이용하기 ( ) 문제 - 직사각형모양의땅이있다. 이땅의둘레, 면적과대각

NCS : ERP(SAP) ERP(SAP) SW IT,. SW IT 01., 05., 06., 08., 15., , 05. SW IT,,,, SAP HR,,, 4,,, SAP ABAP HR SCHEMA, BSP,

(8) getpi() 함수는정적함수이므로 main() 에서호출할수있다. (9) class Circle private double radius; static final double PI= ; // PI 이름으로 로초기화된정적상수 public

Corporate PPT Template

1. 자바프로그램기초 및개발환경 2 장 & 3 장. 자바개발도구 충남대학교 컴퓨터공학과

쉽게 풀어쓴 C 프로그래밍

DBMS & SQL Server Installation Database Laboratory

Microsoft Word - Ch 17. Web Application with Spring MVC.doc

. 스레드 (Thread) 란? 스레드를설명하기전에이글에서언급되는용어들에대하여알아보도록하겠습니다. - 응용프로그램 ( Application ) 사용자에게특정서비스를제공할목적으로구현된응용프로그램을말합니다. - 컴포넌트 ( component ) 어플리케이션을구성하는기능별요

Microsoft PowerPoint - java1-lab5-ImageProcessorTestOOP.pptx

Comparing Open-Source Web Frameworks

유니티 변수-함수.key

Example. Do It Yourself

C++ Programming

Microsoft PowerPoint 세션.ppt

Visual Basic 반복문

(지도6)_(7단원 202~221)

요약 1

PowerPoint Presentation

오버라이딩 (Overriding)

07 자바의 다양한 클래스.key

var answer = confirm(" 확인이나취소를누르세요."); // 확인창은사용자의의사를묻는데사용합니다. if(answer == true){ document.write(" 확인을눌렀습니다."); else { document.write(" 취소를눌렀습니다.");

<4D F736F F F696E74202D20C1A63236C0E520BED6C7C3B8B428B0ADC0C729205BC8A3C8AF20B8F0B5E55D>

뇌를 자극하는 JSP & Servlet 슬라이드

슬라이드 1

제이쿼리 (JQuery) 정의 자바스크립트함수를쉽게사용하기위해만든자바스크립트라이브러리. 웹페이지를즉석에서변경하는기능에특화된자바스크립트라이브러리. 사용법 $( 제이쿼리객체 ) 혹은 $( 엘리먼트 ) 참고 ) $() 이기호를제이쿼리래퍼라고한다. 즉, 제이쿼리를호출하는기호

1. 도구개요 STAF Testing 소개 각테스트대상분산환경에데몬을사용하여테스트대상프로그램을통해테스트를수행하고, 통합하며자동화하는 프레임워크 주요기능 테스트통합및자동화 카테고리 Testing 세부카테고리테스트설계및실행 커버리지 Test Integration / Aut

Module 2 Active Directory Domain Services 소개

PowerPoint 프레젠테이션

초보자를 위한 ASP.NET 2.0

untitled

Flex Builder 2 & 차트

PowerPoint 프레젠테이션

JAVA Bean & Session - Cookie

Transcription:

Inside Spring Web MVC 안영회 ahnyounghoe@gmail.com 차례 MVC 개요와오해 Spring Web MVC 개요 Demo 로이해하는 Spring Web MVC 대표적인컨트롤러활용 정리

한국 스프링 사용자 모임 MVC 개요와 오해 한국 스프링 사용자 모임 MVC 개요

MVC 에대한오해 컨트롤러는서블릿이다! 컨트롤러는액션이다! 비즈니스로직은컨트롤러다! 모델은 VO다! 상황에따라다른 MVC 적용

Tier 를고려해보면 Server-side MVC RIA 를채택한다면 MVC in RIA

Spring Web MVC 개요 Spring Web MVC 의처리흐름개요

Spring Web MVC 의 Front Controller 구현 Front Controller(Core J2EE Patterns)

Front Controller(Core J2EE Patterns) Command 와 Controller 활용전략 Front Controller(Core J2EE Patterns) Dispatcher 활용전략

Demo로이해하는 Spring Web MVC Demo 환경 Tomcat 5.5.23 JDK1.6.0.01 Eclipse WTP 1.5.4 Windows Vista 그리고 from the scratch 예제

1) DispatcherServlet t 관문 코디네이터 Inside Spring Web MVC Framework Servlet Dispatcher Servlet ApplicationCont ext 이벤트관련 주요 Mapping /Resolver 로딩 프레임워크기반기능 Do Dispatch

Inside Spring Web MVC How to program web.xml에 <servlet> 및 <servletmapping> 선언 ${servlet-name}-servlet.xml servlet.xml 파일작성

2) Handler Mapping HTTP 요청 -> 처리기 Inside Spring Web MVC dodispatch() > > gethandler() gethandler() code Iterator it = this.handlermappings.iterator(); while (it.hasnext()) { HandlerMapping hm = (HandlerMapping) it.next(); handler = hm.gethandler(request); return handler;

How to program Do nothing! 일단디폴트설정을활용 BeanNameUrlHandlerMapping 3) Controller Spring Web MVC 의요청처리기

How to program 네비게이션만만들어두자. JSP 만호출해주는컨트롤러활용 ParameterizableViewController 4) ModelAndView dvi /6)Vi View View 에데이터모델제공 다양한 View 구현추상화

Inside Spring Web MVC 5) View Resolver 논리적 View 이름 -> 물리적 View 파일

Inside Spring Web MVC dodispatch() > render() > resolveviewname () resolveviewname() code for (Iterator it = this.viewresolvers.iterator(); it.hasnext();) { ViewResolver viewresolver = (ViewResolver) it.next(); View view = viewresolver.resolveviewname(viewname, l i N locale); l if (view!= null) { return view;} } How to program View 유형에따라선택 InternalResourceViewResolver FreeMarkerViewResolver VelocityViewResolver XmlViewResolver

대표적인컨트롤러활용 기본적인요청수행 기본적인정보를보자 할일목록을보는페이지작성 어떻게하나? 1. Controller 코드작성 2. Spring configuration 1. Dependency Injection

AbstractController tc t Form 처리 입력양식을만들어보자 할일을입력하는페이지작성 어떻게하나? 1. Controller 코드작성 2. Spring configuration 1. Dependency Injectio

Inside SimpleFormController ll 1. Form 제출인지판단? No AbstractFormController.isFormSubmission() b i i 2. 새로운 Form 객체생성 1. AbstractFormController.showNewForm() 2. formbackingobject() 3. createcommand() 3. Binder 생성및초기화 1. BaseCommandController.createBinder() 2. initbinder() > 내용없음 Inside SimpleFormController ll 4. 오류가있다면 Model 로반환 reference Data 가있으면 Model 에병합 AbstractFormController.showForm Map model = errors.getmodel(); referencedata(request, t errors.gettarget(), t() errors); return new ModelAndView(viewName, model); 4. Form View 출력

입력화면에서보여줄데이터 선택을위한데이터입력 Form 작성 어떻게하나? referencedata() 템플릿메소드구현 뷰에서모델과동일하게처리 기본형이아닌데이터입력 숫자나문자이외의데이터를화면에서입력하기 어떻게하나? PropertyEditor 코드작성 initbinder() 템플릿메소드에서 binder.registercustomeditor()

Inside SimpleFormController ll 1. Form 제출인지판단? Yes AbstractFormController.isFormSubmission() b i i 2. 세션에서 Form 객체꺼내거나새로운 Form 객체생성 1. AbstractFormController.getCommand() 2. issessionform() True: session.getattribute() False: formbackingobject() Inside SimpleFormController ll 3. Bind 와 validate 1. BaseCommandController.bindAndValidate() d d lid 1. createbinder() 2. 등록된 validator 활용 3. onbindandvalidate() > 내용없음 4. Form 제출처리 SimpleFormController.processFormSubmission() 오류여부 있으면 : showform() 없으면 : onsubmit()

잘못된값세련되게걸러내기 Separation of Concerns 어떻게하나? Validator 구현코드작성 validator 혹은 validators 프로퍼티로등록 Controller 인터페이스구현클래스

정리 Spring Web MVC 의핵심개념 DispatcherServlet Handler Mapping View Resolver Controller Validator Command Model

Et Extra Tips Spring Formatter http://www.springframework.org/files/active/ 0/spring-eclipse-code-conventions.xml Templates for JUnit4, Spring config Throw UnsupportedOperationException! Spring IDE 예고편 Spring Web MVC 실전활용 간결한공통클래스만들기 대규모 Url 을가진사이트를위한 CoC 적용 Freemarker 의활용 Excel 리포팅 6 주후에봅시다.

Resources MVC 개념 http://en.wikipedia.org/wiki/model-view-controller p// p / http://osteele.com/archives/2004/08/web-mvc Spring Web MVC 개요 http://static.springframework.org/spring/docs/2.0.x/reference/mvc.htmlspringframework org/spring/docs/2 html http://java.sun.com/blueprints/corej2eepatterns/patterns/frontcontroller.h tml Demo Expert Spring MVC and Web Flow (Expert) by Seth Ladd, Darren Davison, Steven Devijver, and Colin Yates http://younghoe.info/273 h /273 http://blog.empas.com/ahnyounghoe/read.html?a=12332593 Resources Demo http://blog.empas.com/ahnyounghoe/read.html?a=13620546 p// p / g / http://blog.empas.com/ahnyounghoe/read.html?a=12334324 http://blog.empas.com/ahnyounghoe/read.html?a=15454196 http://blog.empas.com/ahnyounghoe/read.html?a=12398750 html?a=12398750 Extra Tips http://younghoe.info/479 http://younghoe.info/482 http://younghoe.info/497