我正在创建一个Android应用程序,并试图通过JSON从Restful Web服务检索数据。
在本教程中,我使用Restful Web服务(来自URL)中的get和post JSON数据执行了一个调用
所以这里我需要添加价格*数量,如下例:
但是我不知道如何为JSON数据发布这种计算,我谷歌了一下,并尝试了一些其他选项......有人能建议我像这样发布JSON数据吗...
我随后发布了JSON数据
但这应该在点击后完成,它应该要求添加输入数量。离线(db)这是可能的,但对于自定义Listview(异步Listview Online),我无法构建
请让我知道使用这种...我谷歌了很多选项,但我帮助较少......
只要数据是安全的,你就应该使用BigDecimal
如何将数据发布到服务器上,这并不重要。
我会用截击lib。它代替你处理很多事情,你应该深入研究,它会节省你很多时间:http://www.androidhive.info/2014/05/android-working-with-volley-library-1/
此外,我会将GSON用于json对象。它也很简单,例如创建类:
public class Money{
String name;
int quantay;
BigDecimal rate;
BigDecimal total;
/* make seters and getters */
}
和公正创造json这样:
money = new Money("name", 100, 0.54, 54);
Gson gson = new Gson();
String json = gson.toJson(money);
就是这样。你需要在金钱类中使用构造函数。
您可以使用此json结构数据发布到服务器:
{
"date": "2015-07-03",
"item": [
{
"itemname": "xyz",
"quantity": 6,
"price": 80
},
{
"itemname": "abc",
"quantity": 6,
"price": 80
}
],
"total": "960",
"currency": "Rs."
}
正如我理解你的问题,我试图提供以下答案。我希望你理解模型类的概念,这使生活更容易。
第一步:首先创建一个模型类,并使其可序列化以传递模型对象,因为我可以看到您有两个活动,一个用于产品列表,另一个用于计费。在这里,您可以根据需要添加/删除一些字段。
public class Product implements Serializable {
public String productName;
public int price;
public int quantity;
public int total;
}
第2步:现在我假设您知道如何使用gson库、link1和link2将数据分配给ArrayList用户产品。
第3步:下一步是在listview setOnItemClickListener中计算total=price*quantity,如下所示,
Product product = userProducts.get(postiton);
product.total = product.price * product.quantity;
步骤4:将带有可序列化对象的arraylist从一个活动发送到另一个活动,
Intent intent = new Intent(ProductActivity.this, BillingActivity.class);
intent.putExtra("user_products", userProducts);
startActivity(intent);
第5步:在计费活动中获取值,
if (getIntent() != null) {
userProducts = (ArrayList<Product>) getIntent()
.getSerializableExtra("user_products");
}
第6步:现在你的问题是如何发布它们?问题是,您必须为产品列表创建jsonarray,为其他一些字段创建jsonobject,然后您可以将主jsonobject作为字符串发送,这是一个非常好的教程。
try {
JSONObject mainJObject = new JSONObject();
JSONArray productJArray = new JSONArray();
for (int i = 0; i < userProducts.size(); i++) {
JSONObject productJObject = new JSONObject();
productJObject.put("productname", userProducts.get(i).productName);
productJObject.put("price", userProducts.get(i).price);
productJObject.put("quantity", userProducts.get(i).quantity);
productJObject.put("total", userProducts.get(i).total);
productJArray.put(productJObject);
}
mainJObject.put("products", productJArray);
mainJObject.put("grandd_total", grandTotal);
} catch (Exception e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
应该是这样的,
{
"products": [
{
"productname": "p1",
"price": "15",
"quantity": "6",
"total": 90
},
{
"productname": "p2",
"price": "25",
"quantity": "4",
"total": 100
}
],
"grandd_total": 190
}
问题内容: 我有两个表如下 桌子 和一张桌子 我想做的是,计算每种产品的小计价格(数量*价格),然后求和整个订单的TOTAL值。 我正在尝试这样的事情 但是当然那是行不通的:) 任何帮助表示赞赏! 编辑: 我只想显示整个订单的总数,因此基本上是OrderItem中每一行的Quantity * Price的总和。这是一些示例数据。 样本数据 桌子产品 表OrderItem 中号 问题答案: 使用:
我想通过js完成对表格进行插入数据。该如何处理。例如有个json数据,格式如下: 最终表格是三行4列,第4列数据是根据每行第3列的数据调用一个方法,然后输出到该行中的第四列中。
我有一个表格,其中包含根据订购的数量和下订单的客户类型的特定项目的价格... 我在SQL中的WHERE子句中遇到问题,无法选择客户根据订购数量获得最佳价格的行。规则是,他们必须至少满足数量,才能获得该定价层的价格。如果他们的订单低于最低数量,那么他们将获得第一个数量的价格(本例中为10),如果他们的订单超过最大数量(本例中为30),则他们将获得该价格。 例如如果一家餐厅订购26单位奶酪,则应选择I
在scikit learn中,我们可以拟合训练数据,然后使用相同的矢量器转换测试数据。列车数据转换的输出是一个矩阵,表示给定文档中每个单词的tf idf分数。 然而,安装的矢量器如何计算新输入的分数?我猜: 一个单词在一个新文档中的分数,通过将同一单词在训练集中的文档上的分数进行聚合计算得出 我曾经尝试过从Scikit学习的源代码中推断出这个操作,但不太明白。这是我之前提到的选择之一还是完全不同的
我们在学校使用hibernate,我们正在实施贷款。我们有一个持续的贷款类别,根据贷款信息(付款金额、到期总额等),应用程序应计算特定贷款的全部付款报价。 因此,我们有一个Quote类,其中包含有关该Quote的信息,Loan类有一个所有Quote的列表(类之间的组合)。 由于报价信息是可计算的,我认为它不应该出现在数据库中。 我的问题是,当Hibernate从DB获得贷款时,如何让它计算并填充报
JSON 数据格式 JSON 是 JavaScript Object Notation 的简称,是一种轻量的数据表示方法。json格式采用key:value的方式记录数据,非常直观,比XML简洁,因而大受欢迎 介绍json格式前,先让我们看看XML格式。显然,XML 得到了相当多的关注(正面和负面的评价都有),已经在 Ajax 应用程序中广泛使用: <request> <firstName>