簡體   English   中英

如何使用 hashmap 從數據庫中檢索數據?

[英]How to retrieve data from database using hashmap?

我有這個recyclerview ,當我單擊一個項目時,我想從數據庫中獲取紅色方塊中的數據。

在此處輸入圖像描述

我想這樣展示它

在此處輸入圖像描述

這就是我保存它的方式:

 Save.setOnClickListener(new View.OnClickListener() {
        @RequiresApi(api = Build.VERSION_CODES.GINGERBREAD)
        @Override
        public void onClick(View v) {

            String refernce = TextRef.getEditText().getText().toString();
            String nompdv = textNomPdv.getEditText().getText().toString();
            String etat = textEtatCommande.getEditText().getText().toString();
            String datecommande = TextDateCommande.getEditText().getText().toString();
            String produitcommande = textProduit.getEditText().getText().toString();
            String qntcommande = editTextProduitQnt.getEditText().getText().toString();


            DatabaseReference newPost = reference.child(refernce);
            newPost.child("refernce").setValue(refernce);
            newPost.child("nompdv").setValue(nompdv);
            newPost.child("etat").setValue(etat);
            newPost.child("datecommande").setValue(datecommande);
            newPost.child("user_id").setValue(uid);
          
            Map<String, Object> values = new HashMap<>();
            values.put(produitcommande, qntcommande);

            DatabaseReference produitRef = reference.child(refernce).child("produit");
            produitRef.updateChildren(values);

這就是我從第一個活動(recyclerview)發送數據的方式:

v.itemView.setOnClickListener(new View.OnClickListener() {
        @Override
        public void onClick(View view) {
            Intent intent = new Intent(view.getContext(), Order_detail.class);
            int pos = v.getAdapterPosition();
            if (pos != RecyclerView.NO_POSITION) {
                Order clickedDataItem = listArray.get(pos);

                intent.putExtra("nompdv", clickedDataItem.getNompdv());
                intent.putExtra("reference", clickedDataItem.getRefernce());
                intent.putExtra("datecommande", clickedDataItem.getDatecommande());
                intent.putExtra("etat", clickedDataItem.getEtat());
             }

            view.getContext().startActivity(intent);
        }
    });

單擊recyclerview中的項目時如何獲取產品及其數量?

更新:這是我的訂單 class:

public class Order implements Serializable {
    public  String refernce, nompdv, etat, datecommande, produitcommande, qntcommande;
     String user_id;

    public Order(){}

    public Order(String refernce, String nompdv, String etat, String datecommande, String produitcommande, String qntcommande, String user_id) {
        this.refernce = refernce;
        this.nompdv = nompdv;
        this.etat = etat;
        this.datecommande = datecommande;
        this.produitcommande = produitcommande;
        this.qntcommande = qntcommande;
        this.user_id = user_id;

    }

    public String getRefernce() {
        return refernce;
    }

    public void setRefernce(String refernce) {
        this.refernce = refernce;
    }

    public String getNompdv() {
        return nompdv;
    }

    public void setNompdv(String nompdv) {
        this.nompdv = nompdv;
    }

    public String getEtat() {
        return etat;
    }

    public void setEtat(String etat) {
        this.etat = etat;
    }

    public String getDatecommande() {
        return datecommande;
    }

    public void setDatecommande(String datecommande) {
        this.datecommande = datecommande;
    }

    public String getProduitcommande() {
        return produitcommande;
    }

    public void setProduitcommande(String produitcommande) {
        this.produitcommande = produitcommande;
    }

    public String getQntcommande() {
        return qntcommande;
    }

    public void setQntcommande(String qntcommande) {
        this.qntcommande = qntcommande;
    }

    public String getUser_id() {
        return user_id;
    }

    public void setUser_id(String user_id) {
        this.user_id = user_id;
    }

}

我如何保存數據的表格

根據您的問題,我假設produit下的密鑰是隨機的。 因此,當您檢索訂單詳細信息時, produit將是一個 LinkedHashmap。 class順序將產品聲明為 LinkedHashmap<String,String>。

您可以打印這些鍵和值。

for(Map.Entry<String, String> e : clickedDataItem.getproduit().entrySet()) {
      
      //  print  e.getKey() e.getValue()
    }

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM