Java代码
struts2 Action获取表单传值
1.通过属性驱动式
JSP:
<form action="sys/login.action" method="post">
<input type="text" name="username">
<input type="submit" value="submit">
</form>
Action:直接通过get、set方法获取。
public class sysAction extends ActionSupport{
private String username;
public String login() throws Exception {
System.out.println(username);
return SUCCESS;
}
public String getUsername() {
return username;
}
public void setUsername(String username) {
this.username= username;
}
}
2.模型驱动方式,必须要实现ModelDriven<T>接口。对于要传入多个model第二种方式不方便
JSP:
<form action="sys/login.action" method="post">
<input type="text" name="username">
<input type="submit" value="submit">
</form>
Action:必须实现getModel() 方法
public class sysAction extends ActionSupport implements ModelDriven<User>{
private User user;
public String login() throws Exception {
System.out.println(getModel().getUsername());
return SUCCESS;
}
public User getModel() {
if (null == user) {
return user = new User();
}
return user;
}
}
3.第三种方式可以完全不实现ModelDriven<T>,也可使用多个model对象的属性。
JSP:
<form action="sys/login.action" method="post">
<input type="text" name="user.username">
<input type="text" name="teacher.level">
<input type="submit" value="submit">
</form>
Action: 必须提供set方法
public class sysAction extends ActionSupport{
private User user;
private Teacher teacher;
public String login() throws Exception {
System.out.println(user.getUsername());
System.out.println(teacher.getLevel());
return SUCCESS;
}
public void setUser(User user) {
this.user = user;
}
public void setTeacher(Teacher teacher) {
this.teacher = teacher;
}
}
分享到:
相关推荐
Struts2 框架中,Action 组件可以通过多种方式接收参数,这些方式包括使用 Action 的属性、使用 DomainModel 和使用 ModelDriven。下面将详细介绍这些方法: 使用 Action 的属性接收参数 在 Struts2 中,可以使用 ...
本篇文章将深入探讨Struts2中Action接收参数的多种方式,以及相关源码解析。 首先,最常见的接收参数方式是通过方法签名直接接收。例如,如果在JSP页面上有这样一个表单: ```jsp <form action="submit.action" ...
在处理用户请求时,Struts2允许开发者通过Action类来接收和处理参数,包括中文参数。当我们需要通过POST方法提交包含中文字符的数据时,可能会遇到编码问题,因为HTTP请求默认使用的是ASCII编码,而中文字符需要UTF-...
本文将详细介绍Struts2中Action获取参数的三种主要方式,并通过实际代码示例来阐述每种方法的使用。 1. **通过getter和setter方法获取参数** 这是最常见的方式,Struts2会自动将请求参数与Action类的属性进行匹配。...
Struts2提供了多种方式来接收参数: 1. **使用setter方法**:这是最基础的方式。在Action类中,对于每个需要的参数,定义对应的属性并提供setter方法。Struts2会自动将请求参数的值注入到这些属性中。 2. **使用`@...
本教程将介绍如何使用IntelliJ IDEA和Struts2框架实现Action类接收参数的三种常见方式,这对于JavaWeb开发初学者来说是极其重要的基础知识。 首先,我们需要了解Struts2框架。Struts2是一个基于MVC(Model-View-...
在Struts2中,Action的配置和使用方式有多种,下面将详细介绍Struts2 Action参数的详细说明。 首先,我们来看Action的配置格式。在Struts2的配置文件(通常是struts.xml)中,Action的基本配置结构如下: ```xml ...
本文将深入探讨Struts2接收参数的几种主要方法,包括通过Action的属性、使用Domain Model(领域模型)以及采用DTO(数据传输对象)进行参数接收。 ### 一、使用Action的属性接收参数 #### 原理 在Struts2框架中,...
首先,Struts2通过Action类来接收参数。Action类是Struts2的核心组件,它负责执行业务逻辑。在Action类中,你可以定义一个或多个公共方法,这些方法的参数与请求中的参数名相对应。当请求被处理时,Struts2会自动将...
### Struts2 接受参数的几种方式 #### 第一种方式:直接在 Action 中设置变量 这种方式是最直接的参数接收方式。当从前端传递参数到后端时,我们需要确保 Action 类中有与这些参数名称相匹配的变量。例如,如果...
在Android开发中,与服务器进行数据交互是常见的...而`Struts2_JSON_Demo`可能是一个Struts2的项目,实现了返回JSON数据的Action。通过这两个示例,你可以更直观地学习和理解Android与Struts2之间JSON数据交换的过程。
#### 三、Struts2的工作流程 1. **用户发起请求**:用户通过浏览器向服务器发送请求。 2. **前端控制器拦截**:所有请求首先被Struts2的前端控制器(FilterDispatcher)拦截。 3. **查找并执行Action**:根据请求中...
在Struts2中,我们可以使用Action类来接收和处理请求参数。Action类是业务逻辑的载体,它通常会有一个或多个方法(称为执行方法)与特定的URL路径关联。当用户发送一个HTTP请求到服务器,Struts2拦截器会解析请求,...
### Struts2_Action 学习笔记与通配符配置详解 #### 一、Struts2简介及简单配置 Struts2是一个基于Java EE平台的开源Web应用框架,它继承了Struts1的优点,并在此基础上进行了大量的改进。Struts2的核心功能之一是...
总的来说,Struts1.x和Struts2.x都实现了从JSP页面到Action的数据传递,但在实现方式上有显著差异。Struts1.x依赖于ActionForm,而Struts2.x则使用了更强大的OGNL和拦截器机制。了解这些原理有助于我们更好地理解和...
在Struts2框架中,Action类可以通过多种方式接收请求参数,以下是其中的三种方式: 1. 使用Servlet的API接收请求参数 在Action类中,可以使用Servlet的API来接收请求参数,例如使用request.getParameter()方法来...
在Struts2中,ModelDriven是它提供的一种处理模型数据的机制,能够帮助开发者更方便地管理和传递Action类中的模型数据。这篇博客文章可能详细探讨了如何在Struts2中使用ModelDriven接口来接收和处理请求参数。 ...