快速业务通道

基于Struts 2开发Web应用 - 编程入门网

作者 佚名技术 来源 NET编程 浏览 发布时间 2012-06-20
2开发Web应用(4) 时间:2011-01-25 IBM 吴春峰 程炜

下面我们开发该应用的各个组件:

创建 Action

创建基类

通过基类实现 SessionAware, ServletRequestAware, ServletResponseAware 接口,可以使用 IOC 方式初始化 session, request 和 response。这种实现可以方便所有子类访问 session, request 和 response。

import java.util.Map; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; import org.apache.struts2.interceptor.ServletRequestAware; import org.apache.struts2.interceptor.ServletResponseAware; import org.apache.struts2.interceptor.SessionAware; import com.opensymphony.xwork2.ActionSupport; public class BaseAction extends ActionSupport   implements SessionAware, ServletRequestAware, ServletResponseAware{   private Map sessionMap;   private HttpServletRequest request;    private HttpServletResponse response;    public void setServletRequest(HttpServletRequest request) {      this.request = request;    }    public void setServletResponse(HttpServletResponse response) {      this.response = response;    }    public void setSession(Map map){     this.sessionMap=map;    }    public HttpServletRequest getHttpServletRequest(){     return request;    }    public HttpServletResponse getHttpServletResponse(){     return response;    }    public Map getSession(){     return sessionMap;    } }

创建 , 配置 Action

在该示例中,所有 form 表单提交使用一个 Action 类,该类的不同方法将作为不同表单提交的 Action。在该示例中,execute(), createOrEditUser(), submitUser(), deleteUser() 对应于不同表单对应的 action。

图 8. UserAction 代码

基于Struts 2开发Web应用(5)

时间:2011-01-25 IBM 吴春峰 程炜

在 Struts 2 应用中,action 的配置文件应该位于类根路径下,一个 Struts 2 应用中可以存在多个 action 配置文件,但这些文件需要在 struts.xml 中引用,本例所有 action 在 struts-user.xml 中定义,struts.xml 引用 struts-user.xml。

在 struts-user.xml 中可以看到不同的类方法被配置成不同的 Action, 如果没有指定方法,那么 struts 2 框架会默认调用 execute(), 例如:”showUserList”

<!DOCTYPE struts PUBLIC    "-//Apache Software Foundation//DTD Struts Configuration 2.0//EN"    "http://struts.apache.org/dtds/struts-2.0.dtd"> <struts>    <package name="user" extends="struts-default" namespace="/admin">      ……………      <!-- user list -->   <action name="showUserList" class="sample.action.UserAction">    <result>/WEB-INF/page/userList.jsp</result>   </action>   <!-- add user -->   <action name="createOrEditUser"     class="sample.action.UserAction"    method="createOrEditUser">    <result>/WEB-INF/page/user.jsp</result>   </action>   <action name="submitUser"     class=

凌众科技专业提供服务器租用、服务器托管、企业邮局、虚拟主机等服务,公司网站:http://www.lingzhong.cn 为了给广大客户了解更多的技术信息,本技术文章收集来源于网络,凌众科技尊重文章作者的版权,如果有涉及你的版权有必要删除你的文章,请和我们联系。以上信息与文章正文是不可分割的一部分,如果您要转载本文章,请保留以上信息,谢谢!

分享到: 更多

Copyright ©1999-2011 厦门凌众科技有限公司 厦门优通互联科技开发有限公司 All rights reserved

地址(ADD):厦门软件园二期望海路63号701E(东南融通旁) 邮编(ZIP):361008

电话:0592-5908028 传真:0592-5908039 咨询信箱:web@lingzhong.cn 咨询OICQ:173723134

《中华人民共和国增值电信业务经营许可证》闽B2-20100024  ICP备案:闽ICP备05037997号