JAVA的DButil、Hashmap、ListView!
這是在網上看到的範例,在dbutil中有利用soap來和webservice交換數據,其中一個利用soap例子是:
增加貨物:
public void addedGood(String Cname, String Cnum) {
arrayList.clear();
brrayList.clear();
arrayList.add("Cname");
arrayList.add("Cnum");
brrayList.add(Cname);
brrayList.add(Cnum);
Soap.GetWebServre("addedGood", arrayList, brrayList);
}
在MainActivity按下按鈕:
btn2.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View v) {
另外在dbutil有用List、soap及Hashmap方式來獲取全部的貨物的資料:
public List<HashMap<String, String>> getAllInfo() {
List<HashMap<String, String>> list = new ArrayList<HashMap<String, String>>();
arrayList.clear();
brrayList.clear();
crrayList.clear();
crrayList = Soap.GetWebServre("selectGood", arrayList, brrayList);
HashMap<String, String> tempHash = new HashMap<String, String>();
tempHash.put("Cno", "Cno");
tempHash.put("Cname", "Cname");
tempHash.put("Cnum", "Cnum");
list.add(tempHash);
for (int j = 0; j < crrayList.size(); j += 3) {
HashMap<String, String> hashMap = new HashMap<String, String>();
hashMap.put("Cno", crrayList.get(j));
hashMap.put("Cname", crrayList.get(j + 1));
hashMap.put("Cnum", crrayList.get(j + 2));
list.add(hashMap);
}
return list;
}
所有貨物在MainActivity有利用SimpleAdapter來轉煥至ListView,然後以ListView方式呈現。
List<HashMap<String, String>> list = new ArrayList<HashMap<String, String>>();
list = dbUtil.getAllInfo();
adapter = new SimpleAdapter(
MainActivity.this,
list,
R.layout.adapter_item,
new String[] { "Cno", "Cname", "Cnum" },
new int[] { R.id.txt_Cno, R.id.txt_Cname, R.id.txt_Cnum });
listView.setAdapter(adapter);
}
按下按鈕就可以呈現所有商品:
btn1.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View v) {
hideButton(true);
setListView();
}
});
而現在我有一個問題就是,如果只要查詢一個商品,是透過dialog輸入框商品編號來查詢商品資料,請問我該如何做?也是要和呈現所有商品的方法一樣嗎?還是有什麼方法可以寫?
MainActivity增加貨物:
btn2.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View v) {
hideButton(true);
setAddDialog();
}
});
請問回傳的類別是指?
可以寄程式碼到您的email嗎?因為知識+的字數有限
如果把查詢部分用try-catch可以嗎?還是要用if-else?
因為我看一些其他像是用json或是sqlite的查詢範例會用到try-catch,以為會用到。我的查詢listview是和顯示所有項目的listview大致一樣,只有list = dbUtil.getAllInfo();這裡不一樣
public List > query() {
List > list = new ArrayList >();
arrayList.clear();
brrayList.clear();
crrayList.clear();
crrayList = Soap.GetWebServre("getnum", arrayList, brrayList);
HashMap tempHash = new
因為字數有限,因為字數有限,所以寄信給您了
1 個解答
- LeiLv 66 年前最佳解答
文中所提的一些webservice和dbutil
應該都屬於公司中客製的一些功能或類別
且目前所列出的程式
大多是以條列為主
就是把查詢到的資料
顯示在ListView
若要將查詢到的資料顯示出來
要先看有哪些webservice可以呼叫
或是dbutil有哪些方法可以用
然後根據回傳的類別才能決定
2015-05-20 10:54:43 補充:
一般狀況下
會以List >型態回傳的類別
通常就是要以listview呈現
若要呈現商品的單品資料
通常會以HashMap或是其他pojo的型態呈現
查詢跟try-catch還有if-else似乎沒有太大關係