1.1 Action类的代码结构:
public class RegisterAction{
//1.定义业务逻辑接口的对象
private UserService userSerice;
//2.定义与表单元素或get请求参数对应的属性
private String nickname;//<input name="nickname"/>
// request uri=/dang/book/detail.action?bid=1
private String bid;
// <input name="user.userName"/>
private User user;
//属性的getter 和setter方法....
//3.定义默认处理请求的execute方法
public String execute()
throws Exception{...}
1.2 如何接收请求参数?
1.3 如何处理作用域中的对象?
使用ActionContext对象,可以
处理与当前Action关联的各种数据。
每一个Action实例都有自己的ActionContext对象,
ActionContext通过ThreadLocal来维护的。
a.如何获取ActionContext对象?
在每一个业务方法(比如execute)中,
ActionContext ac域=ActionContext.getContext();
b.如何获取Session作用中的数据?
Map<String,Object> getSession();
(操作Map集合就是在操作Session对象中的数据)
c. 如何获取application作用域中的数据?
Map<String,Object> getApplicaiton();
d. 如何获取请求作用域中的数据?
//获取请求作用域中name对应的对象
Object get(String name);
//将对象value以名称name方法请求作用域中
void put(String name,Object value);
e. 如何单独获取get请求的参数?
request uri: /dang/book/detail.action?bid=1
当没有定义与bid对应的属性时,
通过ActionContext获取请求参数:
Map<String,Object> values
=ac.getParameters();//获取请求参数对应的Map集合
Object value=values.get("bid"); //value实际上是String[]
String bid=((String[])value)[0];
----------------------------------------------------
1.4 如何获取Servlet API对象?
通过ServletActionContext类。
静态方法:
HttpServletRequest getRequest();
HttpServletResponse getResponse();
ServletContext getServletContext();
分享到:
相关推荐
3. **注解方式**:除了XML配置,Struts2也支持使用注解在Action类或方法上直接声明拦截器,这样可以更方便地控制权限。 4. **共享数据**:在拦截器中,可以利用ActionContext或ThreadLocal等机制来传递和共享数据,...
在Struts2中,拦截器是实现业务逻辑控制和增强功能的重要机制,它们扮演着类似于AOP(面向切面编程)的角色,允许在动作执行前后插入自定义逻辑。在这个“Struts2拦截器实现权限控制demo”中,我们将深入探讨如何...
- **Action类**:作为控制器(Controller),处理用户的请求并将数据传递给视图层展示。 - **Interceptor**:拦截器在请求到达Action之前或之后执行,可以用来实现权限控制、日志记录等功能。 - **Configuration**:...
Struts2的Action类是控制器的核心,负责处理用户请求,并通过Result将响应返回给客户端。同时,Struts2的拦截器机制允许开发者插入自定义的行为,如日志、权限验证等,进一步增强了可扩展性。 本书将详细介绍以下几...
在Struts2中,拦截器(Interceptor)是核心功能之一,它扮演着处理请求、增强功能和实现业务逻辑的重要角色。拦截器允许我们在动作执行前后插入自定义的代码,使得应用的维护和扩展变得更加灵活。 首先,让我们深入...
- **注解配置**:Struts2也支持使用Java注解来简化配置,直接在Action类或方法上添加注解即可。 3. **Action与Result**: - Action通过`execute()`方法响应请求,开发者可以自定义其他方法来处理特定的业务逻辑。...
在Struts2中,Action充当控制器的角色,它接收并处理请求,然后根据业务逻辑决定返回哪个视图。 ### Struts2的架构组件 Struts2框架的架构主要由以下几个关键组件构成: 1. **Action**:这是Struts2中最核心的...
Action是Struts2 MVC架构中的控制器部分,它负责接收用户请求,调用业务逻辑,然后将结果传递给视图进行展示。在Struts2中,Action类需要继承自`ActionSupport`或自定义的父类,并重写execute方法。此外,Action类还...
Struts2是一个强大的MVC(模型-视图-控制器)框架,用于构建Java Web应用程序。在Struts2中,Action类是处理用户请求的核心组件,它封装了业务逻辑。为Action的属性注入值是Struts2的一个关键特性,使得我们可以方便...
Struts 2通过集成其他开源项目,如FreeMarker和Tiles,提供了丰富的视图层支持,以及灵活的控制器和强大的拦截器机制。 在源码中,`README.txt`文件通常包含了项目的基本信息、构建指南和运行说明,这对于理解和...
这意味着在Struts2中,控制器类不再依赖于任何特定的Web容器API(如`HttpServletRequest`或`HttpServletResponse`),而是作为一个纯粹的业务逻辑处理单元存在。 具体来说,在Struts1中,Action类需要继承自`Action...
在Struts2中,模型负责业务逻辑,视图负责展示数据,而控制器接收用户请求并协调模型和视图的交互。 2. **Struts2入门**: 创建一个简单的Struts2应用通常涉及以下步骤: - 引入Struts2库:在项目中添加Struts2的...
Struts2是一个强大的Java web应用程序框架,用于构建和管理MVC(模型-视图-控制器)架构的应用。这个“struts2小程序”很可能是开发者利用Struts2框架开发的一个小型项目,可能包含了基本的CRUD操作或其他特定功能。...
Struts2的主要作用是协调前端视图、后端业务逻辑和模型数据,它通过拦截器(Interceptor)机制实现了请求处理的分层架构,使得代码更加模块化和易于管理。此外,Struts2还支持多种视图技术如JSP、FreeMarker、...
Struts2是一个强大的Java EE应用程序框架,用于构建和管理MVC(模型-视图-控制器)架构的Web应用。这个“struts2,struts2 demo”很显然是一个包含Struts2框架示例代码的压缩包,旨在帮助开发者理解和学习如何在实际...
此外,Struts2的拦截器机制也是其一大特色,它允许开发者定义自定义的拦截逻辑,如日志、权限验证等,从而实现灵活的业务逻辑控制。 在实际开发中,Struts2提供了丰富的插件支持,如Spring集成、Tiles模板布局、...
1. **Action接口**:在Struts 1中,控制器通常由实现了`com.opensymphony.xwork2.Action`接口的类来实现。该接口定义了一个`execute`方法,它是处理用户请求的核心。 2. **Action类实例化**:每个Action类实例对应...
Struts2是一个用于开发Java EE网络应用程序的开源框架,它基于MVC(模型-视图-控制器)设计模式。Struts2 Action是该框架中的核心组件,用于处理用户请求并返回相应的响应。 首先,要了解Struts2 Action的开发,...
在Struts2中,拦截器扮演着至关重要的角色,它们是实现应用逻辑和业务规则的关键组件,尤其在权限控制方面。这篇博客文章“struts2拦截器实现权限控制”深入探讨了如何利用Struts2的拦截机制来执行用户访问权限的...