当从javascript客户端调用api时,在java api中使用2d数组

时间:2012-07-23 13:31:36

标签: java javascript api cxf

我正在使用Apache CXF在Java中创建一个简单的API,其中一个输入需要是一个二维数组。

此API将从javascript客户端调用。

我对以下内容感到困惑 -

(a)我不想限制Java函数中2-d数组参数的大小。应该是什么类型的参数 - 我应该使用arraylist?或者是其他东西?你能给出2d数组的java部分的样本声明吗?

(b)当javascript客户端调用API时,它将在2d数组中发送数据。现在,有时数据将只是一个单维数组,而有时它将是一个二维数组...此外,每个维度的大小也会因javascript客户端对此函数的各种调用而有所不同。现在,在Java API收到函数调用之后,如何处理2d javascript数组中包含的数据?

(c)从Javascript客户端发送2d数据时是否应该记住任何限制/规则?

2 个答案:

答案 0 :(得分:0)

这两种语言都没有二维数组类型。两者都使用数组数组处理这种数据。至于Java中的类型参数,只需使用双方括号表示MyType[][],它表示MyType对象数组的数组。

当你说有时数据将是一维数组时,你将如何用Java处理它,或者只是你将拥有一维数组?

在Javascript中处理数据应该很简单,只需要一个嵌套循环。但由于两种语言都不会强制执行每行具有相同长度列的约束,因此如果需要矩形2-d数组,则可能需要执行其他操作。

不,对于你的2d数据进入Javascript没有特别的限制,只不过你已经将其他Java数据转换为Javascript了。

答案 1 :(得分:0)

  1. 使用列表列表而不是数组数组。
  2. 如果客户端发送两种不同格式的数据,则需要两种不同的方法,不能用同样的方法处理一维数组和二维数组
  3. 在java端使用Gson序列化/反序列化json对象