gpt4 book ai didi

java - 当我的集合作为 ArrayCollection 发送并在服务器上作为 java.util.Set 接收时,如何保持集合的排序顺序?

转载 作者:行者123 更新时间:2023-12-01 15:43:05 24 4
gpt4 key购买 nike

我使用 Flex 4.5、Java、BlazeDS 和 Spring 开发了一个 Web 应用程序。

我刚刚发现,当我从服务器获取一个集合(java.util.Set)作为 ArrayCollection 时,在 Flex Web 应用程序中对 ArrayCollection 进行排序并将其发送回服务器时,该集合被服务器接收为未排序的 java.util.Set。

关于如何在发送到服务器时保持集合排序有什么建议吗?

最佳答案

您需要在 AS 端使用一个对象,在 Java 端使用一个 Map。在 AS 中,将 arraycollection 中的所有元素放入一个对象中,如下所示

            var list:ArrayCollection = new ArrayCollection();
var obj:Object = new Object();
list.addItem("test");
list.addItem("test2");
for(var i=0;i<list.length;i++){
obj[i] = list.getItemAt(i);
}

之后,将 obj 发送到 Java 端 - AS 对象将被序列化为 Java Map。在服务器端,您将拥有作为 map 中的键的位置,因此您将能够重建顺序(Java 代码很简单,所以我不打算在这里写下来)。

关于java - 当我的集合作为 ArrayCollection 发送并在服务器上作为 java.util.Set 接收时,如何保持集合的排序顺序?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7679362/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com