簡體   English   中英

從數據庫向哈希表添加數據

[英]adding data to hashmap from database

您好,我正在創建一個應用程序,可以在其中將數據存儲在Hashmap和購物車模塊的列表中。但是我想從MS-Access數據庫中獲取此數據。我嘗試了以下代碼,但未編譯。請給我指導。

碼:

import java.sql.*;
import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;

public class Program {
    public static void main(String [] args){}

    public static HashMap getProductsAsMap() {
        try {
            Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");
            Connection con = DriverManager.getConnection("jdbc:odbc:pd");
            ResultSet rs = null;
            Statement st = con.createStatement();
            String sql = ("select * from products");
            rs=st.executeQuery(sql);
            while (rs.next()) { 
                HashMap<String, ProductBean> products= new HashMap<String, ProductBean>();
                String name=rs.getString("pname");
                String desc=rs.getString("pdesc");
                String image=rs.getString("pimage");
                products.put("P1", new ProductBean(name,desc,image));
                return products;
            }
            rs.close();
            st.close();
            con.close();
        }
        catch(Exception e){}   
    }

    public static List getProductsAsList() {
        List<ProductBean> products = new ArrayList<ProductBean>();
        try {
            Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");
            Connection con = DriverManager.getConnection("jdbc:odbc:pd");
            ResultSet rs = null;
            Statement st = con.createStatement();
            String sql = ("select * from products");
            rs=st.executeQuery(sql);
            while (rs.next()) { 
                String name=rs.getString("pname");
                String desc=rs.getString("pdesc");
                String image=rs.getString("pimage");
                products.add(new ProductBean(name,desc,image));
            }
            rs.close();
            st.close();
            con.close();
        }
        catch(Exception e){}
        return products;  
    }
}

我收到2個錯誤,如下所示:

在此處輸入圖片說明

您的ProductBean類沒有使用三個字符串作為參數的構造函數。

如錯誤所示,類ProductBean缺少帶有3個字符串的簽名的構造函數ProductBean(String, String, String)

再次檢查該類以匹配現有的構造函數,或在此處添加一個新的以匹配您的代碼。

應該是這樣的:

products.add(bean)

bean是ProductBean類的對象ProductBean bean = new ProductBean();

暫無
暫無

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

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