想实现从数据库中取出n个对象,然后在JSP中用<bsp>标签迭代输出,由于<bsp>标签是根据property来得到相应的对象,如果property相同的话则取出的是相同的对象,故要在Action中用相同的类声明不同的对象,来传递给<bsp>标签,例如:
Action中
for(int i=0;i<list.size();i++){
SimsSampleDetectInfo s = list.get(i)
}
我想s为s1,s2,s3.. 这样
在网上看帖子说用JAVA反射,大概看了看,感觉不像是解决我这个问题的。抽空在好好看看。
最后用对象数组解决了,就是声明一个类的对象数组,如Users是一个类,那么如果Users[]就是一个对象数组,可以储存Users类型的对象,然后对这个对象数组进行Set,Get,然后
for(int i=0;i<list.size();i++)
{ Users[i].add( (Users)list.get(i) );
给各个Users[i]赋值
然后在JSP中这样写就可以了
Users[] s = (Users[])session.getAttribute("s");
for(int i=0;i<s.length;i++){
String userName = "s["+i+"].userName";
%>
<bspHtml:codeSelect property="<%=userName %>" code="PUB_VIRUSNAME">
</bspHtml:codeSelect>
但是这样把表单提交后最后返回给Action中会报个OGNL的错误,但不影响使用,据说是Struts2不支持这种对象数组传递,有空研究下。。
回传给Action时由于每个对象名称都不相同,所以也要通过for循环来取
for(int i=0;i<length;i++)
{
userName[i] = getRequest().getParameter("s["+i+"].userName");
}
分享到:
相关推荐
在本场景中,我们将探讨如何使用AJAX来传递JSON数组,并在Struts2的Action中接收和处理这些数据。 首先,JSON(JavaScript Object Notation)是一种轻量级的数据交换格式,它易于人阅读和编写,同时也易于机器解析...
2. 在ActionForm中声明对象数组属性,并重写`reset`方法以初始化数组。 3. 在JSP页面中动态创建表单,使用数组索引引用对象属性。 4. 在Action类中从ActionForm中获取对象数组,并进行进一步处理。 通过这种方式,...
本文将深入探讨如何使用jQuery的AJAX方法发送JSON对象数组到Struts2的Action,并在后端进行处理。 首先,我们了解JSON(JavaScript Object Notation)是一种轻量级的数据交换格式,易于人阅读和编写,同时也易于...
使用struts2表单传值,可以传一个或者是作为一个对象的各个属性传,都非常灵活便捷。但是如果我们需要传一个数组并希望struts正确接收,该怎么处理呢?接下来,通过本文给大家介绍通过Ajax两种方式讲解Struts2接收...
1. **封装OGNL操作,实现值的传递**:Struts2通过对OGNL表达式的封装,实现从客户端传入的参数到Java对象之间的值传递。这一过程包括但不限于对各种复杂类型的处理,如数组、列表、映射等。 2. **类型转换**:为了...
在"struts2框架json传递后台数据到echarts"的场景中,主要涉及以下几个关键技术点: 1. **Struts2 Action与Result**:首先,你需要定义一个Struts2 Action,这是处理用户请求的核心组件。Action类通常包含一个或多...
5. **Value Stack**:值栈是Struts2的一个重要概念,它是一个对象容器,存储Action实例和需要传递到视图的数据。视图可以直接通过OGNL(Object-Graph Navigation Language)表达式访问值栈中的对象。 二、OGNL...
在本文中,我们将深入探讨如何使用Ajax、JSON和Struts2框架实现List数据的传递。这个实例主要用于在不刷新整个页面的情况下,通过Ajax从后台获取并显示一个包含多个ErrorCondition对象的List集合。 首先,JSON...
在Struts2中,OGNL作为默认的数据绑定和表达式语言,负责在Action和视图之间传递数据。 4. **Struts2 Plugins**:Struts2提供了许多插件来增强其功能,如Struts2-Convention插件自动映射Action类,Struts2-dojo-...
Struts2是一个非常流行的Java Web框架,用于构建和维护可扩展、模块化且易于管理的企业级应用程序。...通过这些步骤,你可以轻松地在Struts2应用中实现从服务器向客户端传递JSON数据,从而提升Web应用的交互性和性能。
在Struts2中,接收参数是常见的操作,这涉及到用户通过HTTP请求传递的数据如何被框架捕获和处理。这篇博客文章可能深入探讨了Struts2如何在Action类中获取和管理这些参数。 首先,Struts2的核心是DispatcherServlet...
- `<s:action>`:用于调用Struts2的动作,可以传递参数。 - `<s:if>`和`<s:else>`:条件语句,用于控制页面逻辑。 - `<s:iterator>`:迭代标签,用于遍历集合对象,如List、Set等。 - `<s:property>`:显示对象...
ActionContext是Struts2框架中一个关键的组件,它提供了当前请求上下文的信息,而OGNL(Object-Graph Navigation Language)则是Struts2中的表达式语言,用于在模型和视图之间进行数据传递。下面将详细探讨这两个...
6. **OGNL(Object-Graph Navigation Language)**:OGNL是Struts2中的表达式语言,用于在Action和视图之间传递数据。例如,`${variable}`在JSP中用于访问Action中的属性。 7. **Tiles插件**:Struts2可以结合Tiles...
此外,ActionContext还管理了一个值栈(ValueStack),它是Struts2进行数据传递的核心机制之一。 **RequestAware:** RequestAware接口允许Action获取HttpServletRequest对象,从而可以直接访问请求参数等信息。 *...
10. **s:iterator标签**:用于迭代集合,常用于遍历列表、数组或Map,可以在循环内部嵌套其他Struts2标签。 11. **s:property标签**:用于显示Action类属性的值,可以格式化输出,支持EL表达式。 12. **s:debug...
这篇博客文章可能详细探讨了如何在Struts2中使用OGNL来传递和操作数据。 OGNL是Struts2的核心组件之一,它允许开发者通过简单的字符串表达式来访问和修改对象的属性,甚至可以处理复杂的对象结构。以下是一些关于...
对于复杂类型的参数,如List或Map,Struts2提供了一种称为"OGNL表达式"的机制来处理数组和集合的映射。 例如,如果你有这样一个表单: ```jsp [0].name" /> [1].name" /> 提交" /> ``` 你可以这样定义Action...
这个数组可以作为Action的返回结果,Struts2会自动处理并将它传递给视图。 在Struts2的配置文件(struts.xml)中,为`ChartAction`添加一个结果类型,指定当Action执行成功时,应如何处理返回的图表数据。可以配置...
在Struts2中,OGNL作为视图层与控制器层之间的桥梁,负责解析和执行来自Action的请求参数,将它们映射到Action类的属性,同时将Action的结果传递给视图进行渲染。 1. **OGNL的基本语法** OGNL的语法非常灵活,可以...