컴퓨터응용과학부 Java Enterprize(DB) 제 10 주

Slides:



Advertisements
Similar presentations
일정 관리 다이어리 제작 JSP Programming with a Workbook. 학습 목표  사용자의 일정을 관리할 수 있는 다이어리에 대하여 알아보자. JSP Programming with a Workbook2.
Advertisements

컴퓨터와 인터넷.
컴퓨터응용과학부 Java Enterprize(DB) 제 1 주
Chapter 16 : Struts 프레임워크 2. chapter 16 : Struts 프레임워크 2.
CHAP 19. 구글맵.
1. 신뢰할 수 있는 싸이트 등록 인터넷 익스플로러 실행 후 실행
Power Java 제3장 이클립스 사용하기.
4강. Servlet 맛보기 Servlet 문서 작성 하기 web.xml에 서블릿 맵핑 어노테이션을 이용한 서블릿 맵핑
5강. Servlet 본격적으로 살펴보기-I 프로젝트 만들기 doGet() doPost()
제 08 장 자바 빈즈 학기 인터넷비즈니스과 강 환수 교수.
PHP입문 Izayoi 김조흔.
나민영 서경대학교 컴퓨터공학과 CGVR Lab 같이만들어보자 5주차 OpenCV 설정 및 기초.
4장. 웹로직 서버상에서의 JDBC와 JTA의 운용
컴퓨터응용과학부 Java Enterprize(DB) 제 13 주
Java 기초 (Java JDK 설치 및 환경설정)
CHAPTER 02 OpenCV 개요 PART 01 영상 처리 개요 및 OpenCV 소개.
컴퓨터응용과학부 Java Enterprize(DB) 제 12 주
컴퓨터응용과학부 Java Enterprize(DB) 제 8 주
Visual Basic .NET 처음 사용하기.
6강. DI설정 방법 XML파일을 이용한 DI설정 방법 JAVA를 이용한 DI설정 방법 XML과 JAVA를 같이 사용
컴퓨터응용과학부 Java Enterprize(DB) 제 15 주
모바일 자바 프로그래밍 JDBC / WAP Ps lab 오민경.
소프트웨어 분석과 설계 Struts2 & JBOSS 설치하기
Power Java 제14장 배치 관리자.
ASP.NET AJAX 비동기 게시판 작성 2007 컴퓨터공학실험( I )
Chapter 03 : 서블릿 ( Servlet ) 개요. chapter 03 : 서블릿 ( Servlet ) 개요.
제 01 장 인터넷 프로그래밍 개요 학기 인터넷비즈니스과 강 환수 교수.
26강. 포워딩(Forwarding) RequestDispatcher 클래스 HttpServletResponse 클래스
속성과 리스너 초기화 파라미터 외 파라미터에 대해 이해한다. 리스너를 생성해보고 사용에 대해 이해한다.
2장 JSP 개발 환경 설정 이장에서 배울 내용 : JSP 페이지를 작성하기 위한 개발환경을 설정하고, 웹 어플리케이션 개발을 위해 반드시 이해하여야 할 웹 어플리케이션 폴더 구조에 대해 학습한다. 또한 요청된 JSP 페이지가 어떠한 처리과정을 거쳐 응답이 이루어지는가에.
CHAP 12. 리소스와 보안.
3강. JSP 맛보기 JSP 문서 작성 하기 JSP 아키텍처 Lecturer Kim Myoung-Ho Nickname 블스
10강. JSP 본격적으로 살펴보기-II 스크립트릿, 선언, 표현식 지시자 주석 Lecturer Kim Myoung-Ho
1차 프로젝트 발표 GAME ENGINE 게임 공학과 이성진.
전자정부 표준프레임워크 호환성 가이드 전자정부 표준프레임워크 사업단 실행환경 개발팀.
IPython Notebook + Spark + TensorFlow on MacOS
HTTP 프로토콜의 요청과 응답 동작을 이해한다. 서블릿 및 JSP 를 알아보고 역할을 이해한다.
MVC 모델을 이용한 웹 애플리케이션 작성 웹 애플리케이션 개발 순서를 알아본다 웹 애플리케이션의 실행 순서를 이해한다.
Smart Workplace 개발자 가이드
Lab 1 Guide: 교재 2장 DrawX ( 쪽)
Chapter6 : JVM과 메모리 6.1 JVM의 구조와 메모리 모델 6.2 프로그램 실행과 메모리 6.3 객체생성과 메모리
Nessus 4 설치 정보보호응용 조용준.
(개정판) 뇌를 자극하는 Red Hat Fedora 리눅스 서버 & 네트워크
8장 쿠키와 세션 한빛미디어(주).
ASP.NET AJAX / AJAX Control Toolkit 응용 2008 컴퓨터공학실험( I )
컴퓨터응용과학부 Java Enterprize(DB) 제 14 주
웹디자인
자바 5.0 프로그래밍.
LabVIEW WiznTec 주임 박명대 1.
12장 쿠키와 세션 이장에서 배울 내용 : 쿠키와 세션은 웹 페이지 간에 정보를 유지할 때 사용된다. 쿠키와 세션은 사용되는 형태가 비슷하나, 쿠키는 웹 브라우저(클라이언트) 쪽에 저장되고, 세션은 웹 서버 쪽에 저장된다. 이 번장에서는 이들에 대해 학습한다.
기말 프로젝트 계획 MVC 패턴 기반 웹 애플리케이션 개발 프로젝트명 : 팀명 : 팀원 :
15강. 폼 데이터 값 검증 Validator를 이용한 검증 ValidationUtils 클래스
14강. 세션 세션이란? 세션 문법 Lecturer Kim Myoung-Ho Nickname 블스
01. 개요 네트워크에 있는 컴퓨터와 그룹에 대한 NetBIOS 이름에 대응되는 IP 주소를 찾아주는 서비스
STS 에서 웹 서버 설치 방법.
12강. 컨트롤러 컨트롤러 클래스 제작 요청 처리 메소드 제작 뷰에 데이터 전달
Introduction to JSP & Servlet
13주 실습강의 학기, 소프트웨어 설계 및 실험(Ⅰ).
.Net Web Application 2007 컴퓨터공학실험(Ⅰ)
3장 JSP프로그래밍의 개요 이장에서 배울 내용 : JSP페이지의 기본적인 개요설명과 JSP페이지의 처리과정 그리고 웹 어플리케이션의 구조에 대해서 학습한다.
01. 분산 파일 시스템의 개요 네트워크에 분산된 파일을 사용자가 쉽게 접근하고 관리할 수 있게 해준다.
JSP Programming with a Workbook
세션에 대해 알아보고 HttpSession 에 대해 이해한다 세션 관리에 사용되는 요소들을 살펴본다
9 브라우저 객체 모델.
08. 소프트웨어 아키텍처 설계 전략 명지대학교 융합소프트웨어학부 김정호 교수.
슬라이드 쇼의 설정 슬라이드 쇼의 실행 파일과 폴더의 관리 글꼴을 포함해서 저장 웹 페이지로 게시 압축 파일
Power Java 제14장 배치 관리자.
CHAP 15. 데이터 스토리지.
JAVA 프로그래밍 16장 JNLP.
20 XMLHttpRequest.
Presentation transcript:

컴퓨터응용과학부 Java Enterprize(DB) 제 10 주 2014년 11월 4일 프레젠테이션 층의 설계와 구현-스프링 웹플로우(7장)

다음 주 과제 8장 읽어오기 숙제 해서 제출하기

제7장 프레젠테이션 층의 설계와 구현 -스프링 웹플로우 스프링 웹 플로우 살펴보기 스프링 웹플로우의 State 스프링 웹플로우와 EL 스프링 웹플로우의 초기 설정 간단한 플로우 작성 응용편 정리

스프링 웹 플로우 살펴보기 웹 애플리케이션의 흐름에 주목한 프레임워크 구성 요소 프론트 컨트롤러나 뷰 구조가 없다. Flow State Transition

스프링 웹 애플리케이션 동작 개념

서블릿 기반의 웹애플리케이션의 스코프 Request Scope Session Scope Application Scope 브라우저가 요청하고 브라우저로 결과가 돌아오기까지 데이터가 유지된다. Session Scope 브라우저를 열고나서 브라우저를 닫을 때까지 계속 상태 가 유지된다. Application Scope 웹 애플리케이션이 실행하는 동안 계속 상태가 유지되고 모든 클라이언트에서 데이터가 동유된다.

스프링 웹 플로우의 스코프

스프링 웹플로우의 State View State Action State End State Decision State 화면 표시 처리를 하고 사용자에게 정보를 입력시킨다. Action State 비즈니스 로직을 실행한다. End State 현재 플로우를 종료하고 현재 플로우 스코프 상태를 초기 화 한다. Decision State 상태에 맞게 플로우의 조건 분기를 시행한다. Subflow State 현재 플로우에서 서브 플로우로 변화한다.

스프링 웹 플로우와 EL DI 컨테이너의 Bean들을 참조하여 사용할 수 있다. setter 가 있는 Bean은 멤버변수 처럼 사용할 수 있다. person.name (setName 메소드가 있는 경우)

스프링 웹플로우의 고유한 오브젝트 오브젝트 오브젝트 이름 오브젝트 타입 사용 예 Request 스코프 requestScope org.springframework.webflow.core.collection.MutableAttributeMap flowScope.customer.name Flash 스코프 flashScope View 스코프 viewScope Flow 스코프 flowScope Conversation 스코프 conversationScope 요청 파라메터 requestParameters org.springframework.webflow.core.collection.ParameterMap requestParameter.name

스프링 웹 플로우 웹 애플리케이션 생성 과정 Spring MVC Project 생성 필요한 Domain 클래스 추가 필요한 Service 클래스 추가 pom.xml에 웹플로우 라이브러리 추가 servlet-context.xml 에 wbeflow-config 네임스페 이스 추가 servlet-context.xml 에 웹 플로우가 가능하게 하는 Bean 등록 웹 플로우 정의 파일을 저장할 폴더 추가 웹 플로우 정의 파일 추가 웹 플로우가 사용하는 뷰 jsp 파일 추가

스프링 웹 플로우의 Bena 정의 파일 웹 플로우를 동작 시키려면 다른 Bean과 마찬가지 로 웹 플로우에 대한 요청을 처리 해줄 핸들러가 등록 되어 있어야 하고 웹 플로우 정의 파일로 부 터 필요한 빈을 생성할 수 있어야 한다.. 필요한 Bean 은 다음과 같다. FlowHandlerMapping : 요청과 실행할 오브젝트를 연결 하는 역할을 한다. FlowHandlerAdapter : DispatcherSrrvlet이 실제 필요 한 오브젝트를 호출할 수 있는 인터페이스를 제공한다.

servlet-context.xml 수정 실제 클라이언트의 요청에 대한 올바른 웹 플로우를 연결할 수 있도록 한다. /hello 로 요청한 경우에 hello.xml 에 기술 된 웹플로우를 연결한다. 클라이언트의 요청에 대하여 웹 플로우를 매핑하는 것을 가능하게 한다.

스프링 웹 플로우의 Bena 정의 파일 웹 플로우를 사용하려면 웹 플로우 라이브러리에 서 제공하는 다음을 설정해야 한다. ViewFactoryCreator : mvc의 뷰 오브젝트와 웹 플로우 를 연계해 준다. ViewResolver를 참조한다. FlowRegistry : 웹 플로우 정의 파일을 읽어서 필요한 웹 플로우를 등록하고 저장하고 있다. FlowBuilderServices 를 참조한다. FlowBuilderServices : 웹 플로우 정의파일로부터 플로우 를 구축할 때 필요한 오브젝트를 관리한다. ViewFactoryCreator를 참조한다. FlowExecutor : 실제 플로우를 실행하는 역할을 한다. FlowRegistry를 참조 한다.

servlet-context.xml 수정 나중에 참조하기 위하여 뷰리졸버에 id를 부여한다. Id는 viewResolver 로 설정하였다. Bean을 로드할 때 ejb.y2014.week11 패키지에 있는 모든 클래스를 사용하도록 설정한다.

servlet-context.xml 수정 사용하고자 하는 웹 플로우를 정의한 파일들의 위치를 설정한다. 여기에서는 flows 폴더 아래의 모든 xml 파일이 플로우 정의 파일 들이다.

View State 정의 화면에 보여줄 뷰(view)를 지정한다. transition 태그를 이용하여 화면에서 받은 event 의 이름에 따라 다른 스테이트로 이동한다. transition 태그가 실행되는 타이밍에 자동으로 검 증이 이루어진다.

Action State 정의 하나 이상의 evaluate 태그를 지정하여 비즈니스 로직을 수행한다. transition 태그를 이용하여 다음 상태를 결정한다.

End State 정의 플로우를 종료하고 플로우에서 관리하는 리소스를 반환한다.

스프링 웹 플로우의 URL 지정 JSP 파일 내에서의 웹 플로우 실행 URL은 ${flowExecutionUrl}에 저장된다. 이벤트를 서버로 전달하기 위해서는 다음 두 가지 방법을 사용한다. ${flowExecutionUrl}&_eventId=이벤트이름 ${flowExecutionUrl}&_eventId_이벤트이름

서브플로우 이용 서브플로우로 오브젝트를 넘기려면 <input > 태 그를 사용한다. 서브플로우로 부터 결과 오브젝트를 받으려면 <output > 태그를 사용한다.

Evaluate 가 가능한 장소 정의 가능한 장소 처리지정 장소(태그) 처리가 실행되는 타이밍 플로우 자신 flow/on-start/evaluate 플로우가 시작했을 때 flow/on-end/evaluate 플로우가 끝났을 때 Transition transition/evaluate 이동이 발생했을 때 Action state action-state/on-entry/evaluate 스테이트에 들어갈 때 action-state/evaluate 스테이트 안에서 action-state/on-exit/evaluate 스테이트를 나갈 때 View State view-state/on-entry/evaluate view-state/on-render/evaluate 뷰를 표시할 때 view-state/on-exit/evaluate 스테이트에서 나날 때 Decision state decision-state/on-entry/evaluate decision-state/if 조건 분기를 할 때 decision-state/on-exit/evaluate 스테이트에서 나갈 때 Subflow state subflow-state/on-entry/evaluate subflow-state/on-exit/evaluate