Apache Struts: Action Class(Struts 2.0.14)

도서: http://www.yes24.com/24/goods/3533040

액션 클래스

액션 클래스는 스트럿츠 2가 액션을 실행하기 위한 엔트리 포인트이다. 기본 액션 메소드는 묵시적으로 execute()로 지정되 있다. execute() 메서드의 리턴 값인 문자열(String)은 액션 실행이 끝난 후 어떤 리절트를 실행할지를 결정하기 위해 사용된다. 액션 메소드가 반환하는 이 문자열 값을 ‘리절트 코드’라 부른다.

clip_image001

위 에에서는 execute() 메소드가 message 변수에 “Hello World!”란 메시지를 설정하고 난 후 “success”를 반환 값으로 되돌린다. 반환 값인 “success”를 스트럿츠 2에서는 리절트 코드라고 부른다.

리절트 코드에 의해 어떤 리절트 페이지를 선택할지 결정하는데 이러한 선택은 struts.xml 에 기술되어 있다.

clip_image002

<result /> 요소 중에서 name 속성 값이 execute() 메서드가 리턴한 리절트 코드와 일치하는 것을 고른다. 리절트 코드가 “success” 인 것을 찾아 <result /> 요소 사이에 기술된 HelloWorld.jsp 페이지를 사용자의 웹 브라우저에 표시한다.

액션의 위치는 \WebContent\WEB-INF\src 인데, 액션은 패키지 내에 작성하는 것을 원칙으로 한다.

image

스트럿츠 2에서 웹 앱을 작성하기 위해 어떤 작업을 해야 하는지 정리하자

  1. 웹 앱에서 제공할 액션을 결정한다.(사용자의 요청을 위한 액션 이름을 정한다.)
  2. 요청 처리를 위한 POJO를 만든다. 이때 정보를 주거나 받을 수 있도록 하기 위한 필드(POJO 내부에)를 정의하고 execute() 메소드를 정의해서 적절한 처리를 한다.
  3. 최종 result로 나올 page를 정의한 jsp 페이지에서 결과로 나온 정보들을 화면에 뿌려준다.
  4. struts.xml에 액션 요청 처리 후 결과 페이지를 매핑한다.

web.xml 역할

web.xml 파일은 배포 서술자(DD, Deployment Descriptor)의 하나로써, 웹 앱의 기본 환경 설정을 위한 파일이다. 작성한 웹 앱을 컨테이너에서 실행하기 위해서는 배포라는 작업이 필요하다. 배포 서술자는 Java EE 스펙으로 웹 앱의 기본적인 설정을 위해 작성한 파일로써, 웹 앱의 배포와 관련된 정보를 제공하여 다른 컨테이너에서 별도의 설정 없이 운영할 수 있도록 작성한다.

clip_image001[5]

모든 파일에 대한 요청을 struts2 필터에 전달하기 위해 /* 을 적용.

이것도 살펴보세요!

Vue3: 프로젝트 폴더/파일 구성, ESLint

새로 만든 Vue 프로젝트의 폴더/파일 구성 폴더/파일내용.vscodeVisual Studio용 설정 파일dist배포용 파일 세트를 저장node_modules라이브러리를 저장public웹으로 공개할 …

답글 남기기

이메일 주소는 공개되지 않습니다. 필수 필드는 *로 표시됩니다