struts2에서 세션(session) 사용하기

 

스트럿츠2에서 세션 받아오기

- 스트럿츠2에서는 세션 데이터을 맵으로 관리하기 때문에 받아올때에도 다음과 같이 맵객체에 담아준다.

ActionContext con = ActionContext.getContext();
Map session = con.getSession();  

 

세션에 내용을 입력할 경우

- map에 데이터를 넣는 것과 동일하다. 키값으로는 object를 사용해도 된다.

 session.put( "키값" , 내용 );  
 

 

현재 무슨 세션이 있는지 알고자 할 경우


1. 키 값을 알고 있는 경우

- key값을 알고 있을경우에는 key값으로 바로 가져오면 된다.

  Object value = session.get("키값");  

2. 키 값을 모르고 있는 경우

- key값을 모르는 경우에는 세션에 존재하는 모든 키값을 가져와서 해당 데이터를 몽땅 가져온다.

Set set = session.keySet();
Iterator ite = set.iterator();
while(ite.hasNext())
{
     String key = (String) ite.next();
     Object value = session.get(key);
}  

 

세션 삭제하기

- session에서 해당 키값에 해당하는 데이터를 제거합니다.

session.remove("키값");  

 

JSP 문서에서 세션 확인하기

- if문 사이에 세션을 확인하는 코드를 넣어줍니다.

<%@ taglib prefix="s" uri="/struts-tags" %>
<s:if test="#session">
<!--세션 확인 하는 코드-->
</s:if>  

'개발자 센터 > Struts2' 카테고리의 다른 글

Struts2 문자열 출력 예제  (0) 2009.12.11
Struts2 Action : 액션  (0) 2009.12.11
Struts2 Framework 아키텍처  (0) 2009.12.11
Struts2 Framework의 특징  (0) 2009.12.11
Struts2 Framework 환경설정 방법  (0) 2009.12.11
Posted by 피곤키오
,

web.xml

web.xml 파일에 Struts 2 Framework 을 연동하는 내용을 기술합니다. 아래의 내용과 같이 web.xml 을 구성합니다.

web.xml 에 FilterDispatcher 를 등록하여 request 가 발행하면 Struts 2 Framework 가 그 request 를 받도록 설정합니다.

 

/WEB-INF/web.xml

<?xml version="1.0" encoding="UTF-8"?>

<web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://java.sun.com/xml/ns/javaee" xmlns:web="http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd" xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd" id="WebApp_ID" version="2.5">

<display-name>basic</display-name>

 

<filter>

    <filter-name>struts2</filter-name>

    <filter-class>org.apache.struts2.dispatcher.FilterDispatcher</filter-class>

</filter>

<filter-mapping>

    <filter-name>struts2</filter-name>

    <url-pattern>/*</url-pattern>

</filter-mapping>

 

</web-app>

 

Struts.xml

Struts 에서 작성한 어플리케이션이 정상적인 동작을 하기 위해서 필요한 환경설정 내용을 포함하고 있습니다.

 

/WEB-INF/struts.xml

<?xml version="1.0" encoding="UTF-8" ?>

<!DOCTYPE struts PUBLIC

    "-//Apache Software Foundation//DTD Struts Configuration 2.0//EN"

    "http://struts.apache.org/dtds/struts-2.0.dtd">

 

<struts>

    <constant name="struts.devMode" value="true"/>

    

    <include file="greeting.xml"/>

</struts>

 

Struts.xml에서 인클루드 한 Greeting.xml도 작성해줍니다. 이 Greeting.xml에 액션 클래스가 설정되어있습니다.

/WEB-INF/greeting.xml

<?xml version="1.0" encoding="UTF-8"?>

<!DOCTYPE struts PUBLIC

    "-//Apache Software Foundation//DTD Struts Configuration 2.0//EN"

    "http://struts.apache.org/dtds/struts-2.0.dtd">

    

<struts>

      

<package name="greeting" extends="struts-default" namespace="/greeting">

<default-action-ref name="noPage"/>

 

<action name="greeting_*" method="{1}" class="struts2.hello.GreetingAction">

<result name="success">/hello.jsp</result>

</action>

 

<action name="noPage">

    <result>/defaultNoPage.jsp</result>

</action>

</package>

 

</struts>    

와일드카드 매핑을 사용하여 greeting_hello.action 처럼 요청 Acrion명에 따라 다른 메소드를 실행하도록 하였습니다.

 

Action Class

위의 greeting.xml에 설정된 액션 클래스를 작성해줍니다.

GreetingAction.java

package struts2.hello;

 

public class GreetingAction {

    public String message;

    

    public String hello() throws Exception {

        message = "Hello...";

        return "success";

    }

    

    public String goodbye() throws Exception {

        message = "Goodbye...";

        return "success";

    }

 

    public String getMessage() {

        return message;

    }

    

}

 

ViewPage

사용자에게 보여줄 뷰페이지를 작성합니다. EL 표현식을 사용해서 메시지를 출력해보았습니다.

hello.jsp

<%@ page language="java" contentType="text/html; charset=EUC-KR"

    pageEncoding="EUC-KR"%>

 

<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">

<html>

<head>

<meta http-equiv="Content-Type" content="text/html; charset=EUC-KR">

<title>Insert title here</title>

</head>

<body>

    <h1>${message }</h1>

</body>

</html>

 

요청결과

http://localhost/namespace/greeting/greeting_hello.action요청한 결과는 다음과 같습니다.

'개발자 센터 > Struts2' 카테고리의 다른 글

struts2에서 세션(session) 사용하기  (0) 2009.12.14
Struts2 Action : 액션  (0) 2009.12.11
Struts2 Framework 아키텍처  (0) 2009.12.11
Struts2 Framework의 특징  (0) 2009.12.11
Struts2 Framework 환경설정 방법  (0) 2009.12.11
Posted by 피곤키오
,

액션 : Action

클라이언트로부터 받은 HTTP요청과 비즈니스 오브젝트가 제공하는 서비스를 연결해주는 역할

구현방법

  • 다른 클래스나,인터페이스를 구현하지 않은 POJO 클래스로 작성
  • com.opensymphony.xwork2.Action 인터페이스를 구현한 클래스로 작성
  • com.opensymphony.xwork2.ActionSupport 클래스를 상속한 클래스로 작성

 

POJO 형태의 액션

다른 클래스나, 인터페이스를 구현하지 않는다.

HelloAction1.java

package struts2.hello;

 

public class HelloAction1 {

    

    private String message;

    

    public String execute() throws Exception {

        message = "Hello World";

        return "success";

    }

    

    public String getMessage() {

        return this.message;

    }

    

}

 

struts.xml

<action name="hello1" class="struts2.hello.HelloAction1">

    <result name="success">/hello.jsp</result>

</action>

 

hello.jsp

<%@ page language="java" contentType="text/html; charset=EUC-KR"

    pageEncoding="EUC-KR"%>

 

<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">

<html>

    <head>

    <meta http-equiv="Content-Type" content="text/html; charset=EUC-KR">

    </head>

    <body>

        <h1>${ message }</h1>

    </body>

</html>

 

Action인터페이스를 구현한 액션

Action인터페이스의 execute() 메소드를 재정의 해야한다.

 

HelloAction2.java

public class HelloAction2 implements Action {

 

    private String message;

    

    public String execute() throws Exception {

        message = "Hello World!!!";

        return SUCCESS;

    }

    

    public String getMessage() {

        return this.message;

    }

 

}

 

ActionSupport 클래스를 상속한 액션

ActionSupport 클래스의 상속도

Action

Validateable

ValidationAware

TextProvider

LocaleProvider 

ActionSupport

Action 인터페이스

  • 액션의 기본동작

Validateable 인터페이스

  • 액션 메소드 실행 전에 유효성 검사 기능 지원

ValidataionAware 인터페이스

  • 액션메시지,액션 에러 메시지, 필드 에러 메시지를 저장, 조회 할 수 있는 기능 지원

TextProvider 인터페이스

  • 지역화된 메시지 리소스에 접근하는 기능 지원

LocaleProvider 인터페이스

  • Locale 객체 제공

 

HelloAction3.java

public class HelloAction3 extends ActionSupport {

    

    private String message;

    

    public String execute() throws Exception {

        message = "Hello World~~~";

        return SUCCESS;

    }

    

    public String getMessage() {

        return this.message;

    }

    

}

 

NameSpace

요청URL의 중간 경로로 사용된다.

http:/ / ip:port/ [어플리케이션패스] / [네임스페이스] / [액션이름] .action

 

Default Action

매핑되어 있지 않은 URL로 요청이 왔을 때 에러를 발생시키지 않고 기본으로 매핑시킬 액션이다.

모든 패키지는 자신의 디폴트 액션을 가질 수 있다.

하나의 네임스페이스당 하나의 디폴트 액션을 가질 수 있다.

 

설정파일 include

struts.xml을 만들 때, 한 파일에 모든 설정을 넣는다면 설정 내용도 길어지고 팀 개발이 어렵게 된다.

각각의 설정 내용을 개별적인 xml파일로 작성후 include 하는 것으로 해결 할 수 있다.

<include file="개별적인 설정 파일명" />

"제로 컨피규레이션 지향" 룰에 의해 설정파일 가장 상단에 묵시적으로 <include file="struts- default.xml">을 포함하고 있다.

 

액션 메소드

execute 메소드 외에 여러 개의 액션 메소드를 만들 수 있다.

기본 메소드가 아닌 메소드는 action 설정에 method속성으로 지정한다.

 

와일드카드 매핑

*를 사용하여 설정의 내용을 줄일 수 있다.

'* '는 여러 번 올 수 있으며 첫번째 *부터 { 1} ,{ 2} ,.. 차례로 매핑된다.

액션의 이름에 ' / '를 사용할 경우 struts.properties 파일에

struts.enable.SlashesInActionNames = true 내용을 추가한다.

'개발자 센터 > Struts2' 카테고리의 다른 글

struts2에서 세션(session) 사용하기  (0) 2009.12.14
Struts2 문자열 출력 예제  (0) 2009.12.11
Struts2 Framework 아키텍처  (0) 2009.12.11
Struts2 Framework의 특징  (0) 2009.12.11
Struts2 Framework 환경설정 방법  (0) 2009.12.11
Posted by 피곤키오
,

Struts2 Framework 아키텍처

웹브라우저가 특정 리소스에 대한 요청을 보내면 스트러츠2 프레임워크의 Filter Dispatcher 모듈이 해당 리소스를 처리하기 위해 적절한 액션을 결정하게된다.

그 후에는 Interceptor 모듈들이 필요한 기능을 수행하게 되고 다음으로 Action클래스의 메소드들이 DB에서 데이터를 저장하거나 가져오는 등의 기능을 수행하게 된다.

그 다음에 결과값이 HTML, PDF, 이미지, 등등의 형태로 브라우저상에 표시가 된다.

 

Struts2 Framework 주요 Class, Interface

 

FilterDispatcher

  • 요청에 대한 메인 엔트리 포인트 역할.
  • 애플리케이션, 세션, 파라미터 및 각 스코프의 속성을 래핑하는 Map 구현체를 설정하여 ActionContext를 생성.
  • ActionMapper를 사용하여 액션의 요청인지 판별하여 액션의 호출 여부를 결정함.
  • 만약, 액션의 요청인 경우 ActionProxy에게 위임.
  • 요청된 이름과 일치하는 액션이 없을 경우 오류 내용으로 응답.

 

ActionProxy

  • 액션을 수행하기 위해 제공되는 대행자 역할.
  • 인터셉터, 리절트 등의 기술들을 캡슐화하기 위해 사용되어진다..
  • struts.xml 파일로 부터 초기화되는 Configuration Filesmanager 모듈을 사용.
  • ActionProxy는 커맨드 패턴을 구현하고 있는 ActionInvocation의 인스턴스를 생성 후 호출.

 

ActionInvocation

  • 액션 인스턴스, 순서대로 적용될 인터셉터들, 리절트 맵등을 가짐.
  • 액션 실행의 현재 상태를 나타냄
  • 인터셉터의 흐름을 제어함.
  • 하나 이상의 인터셉터가 있는 경우 모든 인터셉터들을 차례로 실행시키고 더 이상 호출할 인터셉터가 없는 경우 액션을 실행.
  • 실행된 액션이 리턴한 리절트 정보를 이용해 리절트를 실행시킴.
  • 호출되었던 인터셉터들을 역순으로 호출함.

 

Interceptor

  • 액션의 호출을 동적으로 가로채는 역할.
  • 개발자에게 액션 실행 전(전처리),후(후처리)에 다른 실행코드를 넣을 수 있는 수단을 제공함.
  • 한 개 이상의 액션에 공통적으로 적용할 수 있는 기능들을 별도의 코드로 분리 작성함으로써 캡슐화, 재사용 가능하도록함.

 

Action

  • 사용자의 요청을 처리하기 위한 실질적인 컨트롤 역할.
  • Model영역의 서비스를 호출하는 중개자 역할.
  • 처리 결과에 따라 적절한 view로 이동할 수 있도록 View를 선택함.

 

Result

  • 응답을 어떻게 만들 것인지 결정하는 역할.
  • 리절트 타입에 따라 JSP와 같은 웹 리소스와 연동되거나 스트림을 이용하여 스트리밍도 가능함.
  • 액션 인보케이션이 액션 실행 후 반환되는 리절트 코드에 해당하는 리절트를 호출하게 됨.

 

Struts2 Framework 요청 처리 과정

  1. 요청
  2. 필터 디스패처 진입.
  3. 필터 디스패처에서 액션매퍼의 도움으로 Struts2의 액션 요청(.action)인지 판단.
  4. 액션 요청일 경우 액션 프록시로 요청을 위임.
  5. 액션 프록시는 환경설정 관리자를 통해 작업 정보를 받고 액션 인보케이션을 생성후 작업을 위임.
  6. 액션 인보케이션에서 액션 실행전 인터셉터 호출
  7. 액션 인보케이션에서 액션 호출후 리절트 코드값을 리턴받음.
  8. 리턴받은 리절트 값에 해당하는 struts.xml의 매핑된 리절트를 찾고 렌더링.
  9. 액션 인보케이션에서 역순으로 인터셉터 호출.
  10. 응답.

'개발자 센터 > Struts2' 카테고리의 다른 글

struts2에서 세션(session) 사용하기  (0) 2009.12.14
Struts2 문자열 출력 예제  (0) 2009.12.11
Struts2 Action : 액션  (0) 2009.12.11
Struts2 Framework의 특징  (0) 2009.12.11
Struts2 Framework 환경설정 방법  (0) 2009.12.11
Posted by 피곤키오
,

Struts2 Framework

스트럿츠2는 오픈심포니(OpenSymphony) 웹워크(WebWork)의 뛰어난 아키텍처와 아파치(Apache) 스트럿츠(Struts) 커뮤니티가 만나 탄생한 새로운 프레임워크이다. 스트럿츠2는 간결한 웹 애플리케이션 개발을 목적으로 하고 있다. 업무를 구현하는 것은 소스 코드를 생성하는 것 외에도 디버깅과 테스트 작업을 포함하고 있다. 개발이 간결하고 쉽다는 것은 코딩이 쉽다는 것뿐만 아니라, 디버깅과 테스트 역시 쉽다는 것을 의미한다. 이러한 환경을 개발자에게 제공하기 위해 프레임워크가 맡아야 할 책임은 더욱 커지게 된다.

 

웹워크 + 스트럿츠 = 스트럿츠2

 

 

Struts2 Framework의 특징

 

제로 컨피규레이션(Zero Configuration) 지향

  • 환경설정의 내용이 간단해짐.
  • 기본적인 설정파일을 제공함으로써 많은 양의 설정 내용을 줄여줌.
  • 기본 설정 정보 오버라이딩 가능.
  • 소스상에 어노테이션 삽입을 통해 설정 내용을 줄일 수 있음.
  • 와일드카드 매핑 지원.

 

신속한 리로딩

  • Struts1과는 달리 변경된 환경 설정 파일 및 리소스번들 파일의 내용은 웹컨테이너를 재구동하지 않아도 자동으로 리로드된다.

 

POJO 액션

  • 액션 클래스를 POJO클래스로 개발 가능하다.
  • 어떤 Java 클래스라도 execute() 메소드만 정의하면 Action클래스로 사용될 수 있다. 따라서, 프레임워크에 종속되지 않는 액션 개발이 가능하다.
  • 액션 개발시 IoC 사용 가능하다. 객체 간 의존성을 최소화 시킬 수 있다.
  • 단위 테스트가 용이하다.

 

POJO 폼

  • 파라미터 저장을 위한 목적의 ActionForm과 같은 클래스가 스트럿츠2에서는 사용되지 않는다.
  • 별도의 폼빈을 작성할 필요 없이 POJO클래스로 개발된 모델을 재사용할 수 있다.
  • 따라서, 모든 값들을 String 프로퍼티 형태로 사용하지 않아도 된다.

 

인터셉터

  • 요청을 중간에 가로채어 액션 실행 전과 실행 후에 실행될 수 있는 코드를 별도의 계층으로 작성 가능 하도록 한다.
  • AOP(Aspect Oriented Programming)과 같은 개념이 도입되었다.
  • 다양한 인터셉터를 지원한다.
  • 커스텀 인터셉터 작성이 가능하다.

 

태그 지원

  • 재사용 가능한 다양한 태그를 지원한다.
  • JSP페이지에서 태그를 사용함으로써 많은 양의 자바 코드를 줄일 수 있다.

 

편리한 Ajax 구현

  • Dojo프레임워크를 포함하고 있어 특별한 코드 없이 손쉽게 ajax애플리케이션 작성이 가능하다.

 

다양한 Result 타입 지원

  • JSP뿐만 아니라 FreeMarker, Velocity와 같은 다양한 형태의 View 작성이 가능하다.

 

DI(Dependency Injection) 지원

  • 의존성 주입을 이용하여 객체간의 의존성을 낮추어 개발이 가능하다.
  • Spring 프레임워크 연동도 가능하다.

 

다양한 플러그인 기능

  • 차트 출력(JFreeChart)
  • 리포트 출력(JasperReport)
  • 레이아웃 적용(Sitemesh, Tiles)
  • DI, AOP 지원(Spring)

'개발자 센터 > Struts2' 카테고리의 다른 글

struts2에서 세션(session) 사용하기  (0) 2009.12.14
Struts2 문자열 출력 예제  (0) 2009.12.11
Struts2 Action : 액션  (0) 2009.12.11
Struts2 Framework 아키텍처  (0) 2009.12.11
Struts2 Framework 환경설정 방법  (0) 2009.12.11
Posted by 피곤키오
,

Struts2 Framework 환경설정

http://struts.apache.org 에서 struts-2.1.8.1-lib.zip 다운로드 받습니다.

압축을 풀고 라이브러리를 웹어플리케이션 /WEB-INF/lib/ 디렉토리 아래에 복사합니다.

필수 라이브러리는 다음과 같습니다.

  • struts2-core-2.1.8.1.jar
  • xwork-core-2.1.6.jar
  • ognl-2.7.3.jar
  • commons-logging-1.0.4
  • freemarker-2.3.15

 

Struts2 Framework 라이브러리

라이브러리(jar파일)

설명

struts2-core-2.0.X.jar

스트럿츠2의 핵심 라이브러리이다.

xwork-2.0.5.jar

스트럿츠2의 새로운 점 중 가장 큰 부분이 Webwork (=Xwork) 와 통합 되었는다는 것이다.

xwork가 주가 되고 struts가 뒷받침 해주는 형식으로 작동한다.

ognl-2.6.11.jar

Object Graph Navigation Language라고 한다.

struts2를 위한 EL(Expression Language)이다.

JSP 2.1 스펙에 포함된 EL과 매우 비슷하다.

commons-logging-1.0.4.jar

log4j와 같은 로깅을 위한 라이브러리이다.

freemarker-2.3.8.jar

UI 태그 템플릿을 위한 라이브러리이다

 

Struts2 Framework 환경설정 파일

web.xml

스트럿츠2의 컨트롤러인 FilterDispatcher는 액션을 실행하기 위한 환경을 구축하기에 스트럿츠 프레임워크로 들어오는 모든 요청에 대해서 최초의 진입점이org.apache.struts2.dispatcher.FilterDispatcher가 되도록 해야 한다.

  • Deployment Descriptor
  • FilterDispater를 등록해야 한다.

 

WEB-INF/web.xml

<?xml version="1.0" encoding="UTF-8"?>

<web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://java.sun.com/xml/ns/javaee" xmlns:web="http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd" xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd" id="WebApp_ID" version="2.5">

<display-name>basic</display-name>

 

<filter>

    <filter-name>struts2</filter-name>

    <filter-class>org.apache.struts2.dispatcher.FilterDispatcher</filter-class>

</filter>

<filter-mapping>

    <filter-name>struts2</filter-name>

    <url-pattern>/*</url-pattern>

</filter-mapping>

 

</web-app>

 

struts-default.xml

struts2-core-2.1.8.1.jar의 루트에 struts- default.xml 파일이 존재한다.

기본적인 설정내용을 포함하고 있다.

ResultType, Interceptor, Intercepter- stack 등

 

struts-default.xml

<struts>

<bean class="com.opensymphony.xwork2.ObjectFactory" name="xwork" />

<bean type="com.opensymphony.xwork2.ObjectFactory" name="struts" class="org.apache.struts2.impl.StrutsObjectFactory" />

 

<bean type="com.opensymphony.xwork2.ActionProxyFactory" name="xwork" class="com.opensymphony.xwork2.DefaultActionProxyFactory"/>

<bean type="com.opensymphony.xwork2.ActionProxyFactory" name="struts" class="org.apache.struts2.impl.StrutsActionProxyFactory"/>

<package name="struts-default" abstract="true">

<result-types>

<result-type name="chain" class="com.opensymphony.xwork2.ActionChainResult"/>

<result-type name="dispatcher" class="org.apache.struts2.dispatcher.ServletDispatcherResult" default="true"/>

</result-types>

 

<interceptors>

<interceptor name="alias" class="com.opensymphony.xwork2.interceptor.AliasInterceptor"/>

<interceptor name="autowiring" class="com.opensymphony.xwork2.spring.interceptor.ActionAutowiringInterceptor"/>

<interceptor name="chain" class="com.opensymphony.xwork2.interceptor.ChainingInterceptor"/>

</interceptors>

 

<interceptor-stack name="defaultStack">

<interceptor-ref name="exception"/>

<interceptor-ref name="alias"/>

<interceptor-ref name="servletConfig"/>

<interceptor-ref name="prepare"/>

</interceptor-stack>

<default-interceptor-ref name="defaultStack"/>

</package>

 

</struts>

 

struts.xml

클래스패스 루트에 위치해야 한다.

<package> 요소를 사용하여 액션, 리절트, 인터셉터에 대한 설정을 패키지 단위로 묶는다.

struts-default 패키지는 스트럿츠2에서는 제공해 주는 디폴트 설정 파일인 struts-default.xml에 정의되어 있다.

struts-default 패키지는 스트럿츠2로 웹 애플리케이션을 개발하는데 필요한 리절트 타입이나 인터셉터 등을 미리 정의해 두었기에 이를 상속받으면 기본적으로 제공되는 기능들을 일일이 정의하지 않고도 사용할 수 있다는 장점이 있다.

  • 프레임워크의 제어를 설정하는 파일.
  • 액션, 인터셉터, 리절트 등을 설정한다.

 

WEB-INF/classes/struts.xml

<?xml version="1.0" encoding="UTF-8" ?>

<!DOCTYPE struts PUBLIC

    "-//Apache Software Foundation//DTD Struts Configuration 2.0//EN"

    "http://struts.apache.org/dtds/struts-2.0.dtd">

 

<struts>

    <constant name="struts.devMode" value="true"/>

<package name="basic" extends="struts-default">

 

    <action name="hello*" class="struts2.hello.HelloAction{1}">

<result name="success">/hello.jsp</result>

</action>

 

</package>

</struts>

 

struts.properties

프레임워크의 동작방식을 설정하는 파일.

  • 클래스패스 루트에 위치해야 한다.
  • 프레임워크의 구동방식에 대한 설정을 한다.
  • default.properties에 설정된 기본값을 재정의해서 사용할 수 있다.
  • 설정하는 모든 프로퍼티들은 struts.xml에 상수로도 설정가능하다.

 

WEB-INF/classes/struts.properties

struts.devMode=true

struts.custom.i18n.resources=applicationMessages

 

또는 다음과 같이 설정도 가능하다.

 

WEB-INF/classes/struts.xml

<struts>

    <constant name="struts.devMode" value="true" />

    <constant name="struts.custom.i18n.resources" value="applicationMessages" />

</struts>

 

'개발자 센터 > Struts2' 카테고리의 다른 글

struts2에서 세션(session) 사용하기  (0) 2009.12.14
Struts2 문자열 출력 예제  (0) 2009.12.11
Struts2 Action : 액션  (0) 2009.12.11
Struts2 Framework 아키텍처  (0) 2009.12.11
Struts2 Framework의 특징  (0) 2009.12.11
Posted by 피곤키오
,