struts.xml:
<interceptors>
<interceptor name="basic" class="interceptor.BasicInterceptor" />
<interceptor-stack name="default">
<interceptor-ref name="validation" />
<interceptor-ref name="timer" />
</interceptor-stack>
</interceptors>
<action name="*" class="action.BasicAction" method="{1}"
converter="converter.DateConvert">
<interceptor-ref name="default"></interceptor-ref>
<result name="input">/example/{1}.jsp</result>
<result type="redirectAction">login</result>
</action>
Action:
package action;
import java.util.Map;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import org.apache.struts2.interceptor.ApplicationAware;
import org.apache.struts2.interceptor.ParameterAware;
import org.apache.struts2.interceptor.ServletRequestAware;
import org.apache.struts2.interceptor.ServletResponseAware;
import org.apache.struts2.interceptor.SessionAware;
import com.opensymphony.xwork2.ActionSupport;
@SuppressWarnings("serial")
public class BasicAction extends ActionSupport implements ParameterAware,
ServletRequestAware, ServletResponseAware, SessionAware,
ApplicationAware {
@Override
public void setApplication(Map<String, Object> arg0) {
}
@Override
public void setSession(Map<String, Object> arg0) {
//ActionContext.getContext().getSession();
}
@Override
public void setServletResponse(HttpServletResponse arg0) {
}
@Override
public void setServletRequest(HttpServletRequest arg0) {
//ActionContext.getContext().get("request");
}
@Override
public void setParameters(Map<String, String[]> arg0) {
}
}
converter:
package converter;
import java.awt.List;
import java.lang.reflect.Member;
import java.util.Arrays;
import java.util.Map;
import ognl.DefaultTypeConverter;
public class DateConvert extends DefaultTypeConverter {
@SuppressWarnings("rawtypes")
@Override
public Object convertValue(Map context, Object value, Class toType) {
if (toType == List.class)
{
return Arrays.asList(value);
}
return super.convertValue(context, value, toType);
}
@SuppressWarnings("rawtypes")
@Override
public Object convertValue(Map context, Object target, Member member,
String propertyName, Object value, Class toType) {
return super.convertValue(context, target, member, propertyName, value, toType);
}
}
interceptor:
package interceptor;
import java.util.Map;
import com.opensymphony.xwork2.Action;
import com.opensymphony.xwork2.ActionInvocation;
import com.opensymphony.xwork2.interceptor.AbstractInterceptor;
@SuppressWarnings("serial")
public class BasicInterceptor extends AbstractInterceptor {
@Override
public String intercept(ActionInvocation arg0) throws Exception {
Map<String, Object> session = arg0.getInvocationContext().getSession();
if (null != session) {
// TODO
return arg0.invoke();
}
else{
return Action.LOGIN;
}
}
}
- 大小: 44.8 KB
分享到:
相关推荐
ssh中,Struts2的基础知识,是ssh的基础,教科书,请放心使用。
这篇博文将深入探讨Struts2的基础知识,包括其工作原理、核心组件以及Interceptor(拦截器)的模拟实现。 1. **Struts2 框架概述** Struts2是Apache软件基金会的开源项目,它是Struts1的升级版,解决了Struts1的...
Struts2是一个基于MVC(Model-View-Controller)设计模式的Java Web应用程序框架,它在Web开发领域中被广泛使用。...熟练掌握Struts2的基本知识和使用技巧,对于提升Web开发效率和项目质量具有重要意义。
### Struts2基础知识点详解 #### 一、Struts2框架概述 Struts2是Apache组织维护的一个开源项目,它是Struts1的升级版本,在设计理念和技术实现上都有了很大的改进。Struts2采用MVC(Model-View-Controller)模式...
### Struts2基础知识点详解 #### 一、Struts2框架概述 Struts2是由Apache软件基金会维护的一个开源Web应用程序框架,它继承和发展了Struts1和WebWork框架的优点,采用了MVC(Model-View-Controller)设计模式,极...
2. **学习Struts2基础知识**:熟悉Struts2的基本概念、架构设计和核心组件,如Action、配置文件等。 3. **重构Action类**:将Struts1中的ActionForm类重构为Struts2的Action接口实现。需要注意的是,Struts2的Action...
### Struts2的基础知识及例子大全 #### 一、Struts2概述 **Struts2** 是一个基于 **MVC** (Model-View-Controller)设计模式的Java Web应用程序框架,它是由Apache软件基金会维护的一个开源项目。Struts2不仅继承...
Struts2是一个基于MVC(Model-View-Controller)设计模式的开源JavaEE框架,它主要用来...以上就是关于“struts2基础jar包”所包含的主要知识点。掌握这些内容,将有助于理解并有效地利用Struts2框架开发Java Web应用。
这篇“Struts2基础应用二”着重介绍Struts2的核心概念、配置以及在实际项目中的应用。 首先,Struts2是一个基于MVC设计模式的开源框架,它继承了Struts1的优点并解决了其存在的问题,如性能和灵活性。在Struts2中,...
— Web应用的发展 — Model 1和Model 2 — MVC思想 — MVC模式的优势 — 常用MVC框架及其特征 — Struts 1的基本结构及其存在的问题 — WebWork的基本结构 — Struts 2的起源 ...— Struts 1和Struts 2的对比
在"Struts2权威指南前三章"中,我们可以预见到内容将涵盖Struts2的基础知识、安装配置以及核心概念。 首先,第一章可能会介绍Struts2框架的历史背景和它在Java EE应用中的地位。Struts2是Struts1的升级版,解决了...
### Struts2基础知识与实践 #### 一、为什么学习Struts2 - **提升编码效率**:Struts2提供了一套标准的MVC框架结构,能够帮助开发者快速地实现业务逻辑与视图分离,减少重复代码,从而提高开发效率。 - **框架特性...
struts的基础开发,可以帮助初学者学习struts2的相关知识。