-
struts2接受表单的值异常0
<form name="searchForm" method="post">
工号<input type = "text" name="id" />
<input type="button" value="search" onclick="javascript:document.searchForm.action='user/user_list_single?id=<s:property value="id"/>';document .searchForm.submit();"/>
UserAction里面id的set'get方法读写了,但是每次stack contents里面id的值后面独有一个逗号,并且以前的输入记录都保存了,感觉id就跟一个数组似的,这是什么原因啊,我想用这个id作为查询action的参数传递2012年9月05日 09:31
4个答案 按时间排序 按投票排序
-
采纳的答案
1,后台添加个属性id1
2.改变参数名为id1,后台通过ServletActionContext.getRequest().getParameter("")的形式获取。避免2012年9月05日 09:55
-
<form name="searchForm" method="post">
工号<input type = "text" name="id" />
<input type="button" value="search" onclick="javascript:document.searchForm.action='user/user_list_single?id=<s:property value="id"/>';document .searchForm.submit();"/>
1、form的action 有一个id参数
2、<input type = "text" name="id" /> 这也有一个
3、form是post提交
会把form表单域 和 url的一块传输
4、如果你后台是String来接 很可能节点 id逗号空 因为你的表单中的<input type = "text" name="id" /> 可能没值造成的。2012年9月05日 12:52
-
原因就是
工号<input type = "text" name="id" />
form已经有name="id"参数了
在你点击超练级的时候又传参id=<s:property value="id"/>
也就是一个有值,一个没有值空字符
多个name相同的参数内部处理是以逗号分割的。2012年9月05日 09:35
相关推荐
每个Action对应一个特定的用户操作,负责接收表单数据并进行处理。开发者需要创建一个继承自`org.apache.struts2.dispatcher.ng.ExecuteOutcome`或`com.opensymphony.xwork2.ActionSupport`的自定义Action类。 2. *...
例如,如果你有一个名为`saveUser`的方法,接收一个`User`对象作为参数,`User`类中有`name`和`email`字段,那么在HTML表单中提交`name`和`email`字段后,Struts2会自动将这些值填充到`User`对象中。 ```java ...
Struts2框架提供了一种解决方案,即使用Token机制来防止表单的重复提交。以下是对这个主题的详细说明: 1. **表单重复提交问题**:当用户在提交表单时,由于网络延迟或用户误操作,可能会导致同一个表单被多次提交...
在Struts2中,处理用户请求并接收参数是核心功能之一。本篇文章将深入探讨Struts2如何接收参数,并通过源码分析来理解这一过程。 首先,我们来看标题"struts2 接收参数"。在Web应用中,用户通过表单提交数据,这些...
本篇将详细讲解如何实现Android客户端上传文件以及Struts2服务端接收的过程。 首先,让我们从Android客户端开始。在Android中,文件上传主要涉及`HttpURLConnection`或`OkHttp`库,通过POST请求将文件内容发送到...
然后,在Action类中创建一个`java.io.File`或者`org.apache.struts2.dispatcher.multipart.FileItem`类型的字段来接收上传的文件,并使用`@FileUpload`注解标记。最后,处理请求时,框架会自动将上传的文件内容填充...
13. 表单验证:Struts2提供了强大的表单验证功能,可以通过注解或XML配置文件定义验证规则,对用户输入进行校验。 十一、插件支持 14. 插件生态:Struts2拥有丰富的插件库,如Freemarker模板引擎插件、Tiles布局...
此外,为了更好地展示数据,可能还需要在Struts2中使用Interceptor(拦截器),例如,`params`拦截器用于将请求参数绑定到Action,`validation`拦截器负责验证表单数据,`workflow`拦截器管理Action的生命周期。...
例如,`ValidationInterceptor`用于验证表单数据,`ExceptionMappingInterceptor`处理异常等。 3. **Result类型**: 结果表示Action执行后如何展示给用户。常见的结果类型有`dispatcher`(重定向或转发到JSP页面),...
在Struts2中,表单数据的绑定是自动的,Action类的属性与表单字段对应,可以简化开发。此外,Struts2还支持拦截器,可以实现事务管理、权限控制等功能,提高代码的可维护性和安全性。 页面展示方面,Struts2支持JSP...
6. **ActionForm/POJOs**:在Struts2中,Action通常与简单的Java Bean或ActionForm对象交互,用来接收和封装HTTP请求中的参数。 7. **依赖注入**:Struts2支持依赖注入(DI),可以通过注解或XML配置将服务注入到...
6. **插件和标签库**:Struts2有丰富的插件和标签库,如FreeMarker和Velocity模板引擎,以及用于表单验证的Struts2-dojo-plugin等,这些都极大地简化了开发工作。 在"STRUTS2学习实例8"中,你可能将学习如何创建一...
Struts2的Action类会接收这个文件,并使用`Commons FileUpload`库来处理文件内容。这个库处理文件分割、内存限制和临时存储等问题,确保上传过程的安全性和效率。 描述中的链接指向了CSDN博主johnjobs的一篇文章,...
8. **异常处理**:Struts2提供了一套强大的异常处理机制,允许开发者自定义错误页面和异常处理策略。 9. **FilterDispatcher**:Struts2的前端控制器,负责接收HTTP请求,调度拦截器和Action执行。 通过学习这个...
通过这个Struts2登录DEMO,你可以了解并实践如何在实际项目中实现用户登录功能,包括接收用户输入、验证、处理异常以及显示结果。同时,这也是一个很好的起点,帮助你进一步学习Struts2框架的其他高级特性,如插件、...
黑马程序员的笔记中可能包含了如何创建一个简单的Struts2应用,从HelloWorld实例到实际的表单提交、文件上传下载等实战案例,帮助初学者快速掌握Struts2的基本用法。 通过学习这些笔记,开发者将能够理解Struts2的...
创建一个继承自`org.apache.struts.action.ActionForm`的类,添加`FormFile`数组属性来接收文件。例如: ```java public class FileUploadForm extends ActionForm { private FormFile[] files; // getter和...
对于登录,Action类会接收表单提交的数据,验证用户身份;对于注册,它会处理新用户的信息,可能包括密码加密、邮箱验证等步骤。 3. **拦截器**:Struts2的拦截器可以进行全局性的操作,比如登录检查、权限验证等。...