从Struts 1.3 Action子类传递到JSP页面的大数据

时间:2011-02-23 05:40:48

标签: jsp struts action

我想从Action子类向JSP页面发送大量数据。

我的问题:

  1. 在Struts中将数据从Action子类发送到JSP页面的最有效方法是什么?

  2. 我可以面对哪些问题?

  3. 如果我使用ArrayList在请求上放了两个大的request.setAttribute()并在JSP页面上读取该请求怎么办?

1 个答案:

答案 0 :(得分:1)

当您在Struts 1/2中将大量数据从操作返回到JSP时,您不会通过网络发送它。它不是重定向,而是转发。这意味着从操作返回的数据将在JSP中通过引用提供。不涉及复制和网络传输。当然,如果使用JSP和您提供的模型渲染大量内容,则需要花费大量时间将其发送回客户端。但是,在处理一个请求期间,操作和视图(JSP)本身之间的通信发生在内存中。没什么好担心的。

我认为这适用于将模型从控制器返回到视图的每个框架 - 没有被复制,只是引用传递。使用request.setAttribute也不会复制任何内容,也不会涉及克隆。

警告:这不适用于会话属性,这些会话属性在请求之间是持久的,可能会被序列化和复制等。但是对于大对象,请求属性很好,只要你真的需要它们(?)