`

5、struts2 action获取参数的三种方法

 
阅读更多
1:ModelDriven方式:
<body> 
使用ModelDriven接收参数<a href="user/user!add?name=a&age=8">添加用户</a>
</body>

package com.action;

import com.domain.User;
import com.opensymphony.xwork2.ActionSupport;
import com.opensymphony.xwork2.ModelDriven;

public class UserAction1 extends ActionSupport implements ModelDriven<User> {
    private User user = new User();
    public String add(){
        System.out.println(user.getName());
        System.out.println(user.getAge());
        return "success";
    }
    public User getModel() {        
        return user;
    }
}

2:Domain Model方式:
<body> 
使用Domain Model接收参数<a href="user/user!add?user.name=a&user.age=8">添加用户</a>
</body>

package com.action;

import com.domain.User;
import com.opensymphony.xwork2.ActionSupport;

public class UserAction2 extends ActionSupport {
    
    private User user ;
   
    public String add(){
        System.out.println(user.getName());
        System.out.println(user.getAge());
        return "success";
    }
        
    public User getUser() {
        return user;
    }
    public void setUser(User user) {
        this.user = user;
    }

}

3:Parameters方式:
<body>
使用action属性接收参数<a href="user/user!add?name=a&age=8">添加用户</a>
</body>

package com.action;

import com.opensymphony.xwork2.ActionSupport;

public class UserAction3 extends ActionSupport{
    private String name;
    private String age;
     public String add(){
        System.out.println(name);
        System.out.println(age);
        return "success";
    }
    public String getName() {
        return name;
    }
    public void setName(String name) {
        this.name = name;
    }
    public String getAge() {
        return age;
    }
    public void setAge(String age) {
        this.age = age;
    }

}

User.java
package com.domain;

public class User {
    private String name;
    private String age;
    public String getName() {
        return name;
    }
    public void setName(String name) {
        this.name = name;
    }
    public String getAge() {
        return age;
    }
    public void setAge(String age) {
        this.age = age;
    }
}
分享到:
评论

相关推荐

    struts2中Action获取参数的3种方式代码

    本文将详细介绍Struts2中Action获取参数的三种主要方式,并通过实际代码示例来阐述每种方法的使用。 1. **通过getter和setter方法获取参数** 这是最常见的方式,Struts2会自动将请求参数与Action类的属性进行匹配。...

    struts2 action跳转action传参数

    ### Struts2中Action间的参数传递方法 在Struts2框架中,经常需要实现Action之间的跳转,并在跳转过程中传递必要的参数。这种需求在实际开发中非常常见,尤其是在需要根据用户的不同操作来调用不同的业务逻辑时。...

    struts2 使用action属性接收中文参数(post提交)

    - Struts2支持使用注解在Action类的方法参数上,比如`@RequestParam`,配合`@InitBinder`,可以在控制器层处理编码问题。 4. **JSP页面**: - JSP页面的`;charset=UTF-8" language="java" %&gt;`指令应设置正确的...

    Struts2获取参数的三种方法总结

    总结来说,Struts2提供的这三种获取参数的方法各有优劣。属性驱动适合简单的场景,但随着表单复杂度增加,模型驱动和对象驱动方式更优。模型驱动在保持Action类简洁的同时,避免了对象驱动带来的HTML表单编码困扰,...

    struts2获取参数,解决乱码,跳转

    在这个主题中,我们将深入探讨Struts2如何获取参数、解决乱码问题以及实现页面跳转。 首先,让我们来看看Struts2如何获取HTTP请求中的参数。在Struts2中,我们可以使用Action类来接收和处理请求参数。Action类是...

    Struts2在Action中获得Response对象的四种方法

    Struts2 是一个基于MVC 模式的 Web 应用程序框架,它提供了多种方式来获取 Response 对象,以下是四种获得 Response 对象的方法: 方法 1:使用 Struts2 Aware 拦截器 在 Struts2 中,可以通过实现Aware接口来获取...

    struts2中action接收参数的方式

    当请求到达Action时,该拦截器会检查Action方法的参数,并根据参数类型和名字从请求中获取对应的值。对于复杂类型的参数,如List或Map,Struts2提供了一种称为"OGNL表达式"的机制来处理数组和集合的映射。 例如,...

    struts2 向结果传参数

    另一种方法是利用ActionContext来传递参数,ActionContext在Action执行的上下文中存储了请求和 session 的数据。你可以在Action中将参数放入ActionContext,然后在结果页面中通过HttpServletRequest对象获取: ```...

    struts2参数配置

    - Struts2会自动根据`Action.LOCALE_KEY`获取当前用户的Locale,并应用于国际化消息的显示。 #### 五、Action Mapping - **ActionMapping**:定义了Action的映射关系,包括Action的名称、方法等信息。 - 默认使用`...

    Struts2 的接受参数的几种方式

    具体来说,Struts2 会调用 Action 中与字段名称匹配的 setter 方法来设置参数值。例如,如果表单中有 `name` 字段,那么 Struts2 会调用 `setName(String name)` 方法来设置值。 这种情况下,字段名称和 setter ...

    struts1.x 和 struts2.x向Action里填充jsp参数原理

    本篇文章将深入探讨Struts1.x和Struts2.x在向Action中填充JSP参数的原理。 Struts1.x的工作原理: Struts1的核心是ActionServlet,它是一个实现了Servlet接口的控制器。当用户发起HTTP请求时,请求会被Dispatcher...

    struts2 接收参数

    5. **ValueStack**:Struts2使用ValueStack存储Action和其属性,以及其他可展示的值。通过OGNL(Object-Graph Navigation Language)表达式,可以从ValueStack中直接获取参数。 6. **Interceptor拦截器**:自定义...

    android接收json例子struts2Action返回json格式数据

    本示例将详细讲解如何在Android应用中通过HTTP请求从Struts2 Action获取JSON格式的数据,并进行解析和处理。 首先,我们需要了解JSON(JavaScript Object Notation)的基本结构。JSON是一种数据格式,它基于...

    struts2中action如何获取jsp页面参数1.rar

    以上就是Struts2中Action获取JSP页面参数的一些主要方法。在实际开发中,应根据具体需求选择合适的方式,以实现高效且易于维护的代码。理解并熟练运用这些技术,对于提升Web应用的开发效率和质量至关重要。

    JavaEE intellij Idea 做的Action三种接收参数的方式Struts2入门

    本教程将介绍如何使用IntelliJ IDEA和Struts2框架实现Action类接收参数的三种常见方式,这对于JavaWeb开发初学者来说是极其重要的基础知识。 首先,我们需要了解Struts2框架。Struts2是一个基于MVC(Model-View-...

    struts2支持方法上传递参数

    Struts2的这种设计模式使得Action类更加清晰,每个方法都专注于处理一种特定的业务逻辑。此外,它还支持动态方法调用,这意味着Action类可以有多个方法,而无需在配置文件中显式列出它们,只需确保请求的URL与方法名...

    struts2的API耦合与动态方法调用

    动态方法调用是Struts2的一种强大功能,它允许根据不同的用户请求动态决定执行哪个Action方法。主要有以下两种方式: 1. **基于struts.xml配置**:在配置文件中,可以为每个action指定一个默认的方法,比如`&lt;action...

    Struts2表单数据获取项目

    在Struts2中,你可以直接在Action类中声明与表单字段相对应的属性,Struts2的自动数据绑定机制会将表单参数映射到这些属性。例如,如果表单有字段`name`和`email`,Action类可以如下所示: ```java public class ...

    Struts2--为Action的属性注入值

    为Action的属性注入值是Struts2的一个关键特性,使得我们可以方便地从请求参数中获取数据并绑定到Action实例上,以便后续的业务处理。 这个特性主要依赖于Struts2的OGNL(Object-Graph Navigation Language)表达式...

Global site tag (gtag.js) - Google Analytics