我是一个Android应用程序,在其中我向服务器发送json对象。我正在向该对象发送一个名为listProduct的arraylsit,并且我还在listProduct列表中发送第二个arraylist。 我的代码为:
final JSONObject object = new JSONObject();
try {
object.put("AddressID",addressId);
object.put("CustomerID",customerID);
object.put("PaymentTypeID",paymentTypeID);
///////////////////////////////////////////////
JSONArray productArray = new JSONArray();
JSONObject productObject = new JSONObject();
for (int i=0;i<products.size;i++){
productObject.put("ProductID",productID);
productObject.put("Price",price);
productObject.put("Quantity",quantity);
productArray.put(productObject);
}
object.put("ListProducts",productArray);
///////////////////////////////////////////////
JSONArray attributeArray = new JSONArray();
JSONObject attributeObject = new JSONObject();
for (int i=0;i<attributes.size;i++){
attributeObject.put("Name",name);
attributeObject.put("ProductID",productID);
attributeObject.put("AttributeTypeID",attributeTypeId);
attributeObject.put("AttributeID",attributeId);
attributeArray.put(attributeObject);
}
productObject.put("ListAttributes",attributeArray);
这是我的产品列表,来自sqlite数据库。问题是相同的值一次又一次地发送到服务器。我如何将完整的arraylist发送到带有索引的服务器。
private ArrayList<Integer> getCheckProduct() {
Cursor cursor = dbHelper.getCheckOutProduct();
products = new ArrayList<>();
if (cursor != null && cursor.getCount() > 0) {
Log.e("count",String.valueOf(cursor.getCount()));
while (cursor.moveToNext()) {
autoProductID = cursor.getInt(cursor.getColumnIndex("ID"));
price = cursor.getInt(cursor.getColumnIndex("Price"));
quantity = cursor.getInt(cursor.getColumnIndex("Quantity"));
productID = cursor.getInt(cursor.getColumnIndex("ProductID"));
products.add(productID);
}
}
return products;
}