program/struts2

modelDriven method

yoursyun 2008. 8. 22. 18:19

import com.opensymphony.xwork2.Action;

//domain object 를 위한 class
import tutorial.User.UserDao;
import tutorial.User.User;

public class userInfo implements Action, Preparable, ModelDriven{
 User user; // domain object

 @Override
 public String execute() throws Exception{
  display = displayMyStr;
 
  UserDao userDao = new UserDao();
  userDao.createUser(user);

  return SUCCESS;
 }

// prepare method
 public void prepare() throws Exception{
  user = new User();
 }
 // modelDriven method
 public Object getModel(){
  return user;
 }
}

[ userForm.jsp ]
<!-- model Driven use -->
<input type="text" name="name" value="kimsy" />
<input type="text" name="age" value="32" />
<input type="text" name="email" value="yoursyun@gmail.com" />

[ *.xml ]
<action name="userInfo" class="tutorial.userInfo">
  <interceptor-ref name="prepare" />
  <interceptor-ref name="modelDriven" />
  <interceptor-ref name="params" />  
  <!-- <interceptor-ref name="workflow" /> -->
  <result name="input">/userForm.jsp</result>
  <result name="success">/userForm.jsp</result>
 </action>

* 주의 interceptor 의 순서는 바뀌면 안된다. (stack 형태로 params 인터셉터 를 사용 한다)

반응형