gpt4 book ai didi

java - 如何在不从Java中的类创建对象的情况下获取MySQL数据

转载 作者:行者123 更新时间:2023-11-29 09:01:25 26 4
gpt4 key购买 nike

我想从 MySQL 获取数据而不从类创建对象

通常我会做类似的事情

public ArrayList getInventoryByItemId(String ItemId) throws SQLException {
ArrayList list = new ArrayList<Inventory>();
String sql = "SELECT iid, i.uid, item_data, item_id, i.ctime, username, gender FROM Inventory i JOIN user u ON i.uid = u.uid WHERE item_id = '"+ItemId+"'";
Statement stmt = con.createStatement();
ResultSet rset = stmt.executeQuery(sql);
while (rset.next()) {
a = new Inventory(rset.getInt(1), rset.getInt(2), rset.getString(3), rset.getString(4), rset.getTimestamp(6), rset.getString(7), rset.getString(8));
list.add(a);
}
return list;
}

问题是因为 Inventory 对象没有来自连接的用户表的用户数据,我无法创建新的 Inventory

我只想自动创建一个具有所有数据属性的对象,我可以使用列名称访问该对象。

谢谢

最佳答案

如果我遇到问题,

您可以创建新的映射(我推荐 HashMap)并使用列名或索引作为键来放置值。因此,您的列表将是 map 列表。

 while (rset.next()) {
a = new HashMap<Integer,Object>();
a.put(1,rset.getInt(1));
..........
list.add(a);
}

或者,如果您知道确切的列数,您可以使用数组而不是映射(它会更快)

关于java - 如何在不从Java中的类创建对象的情况下获取MySQL数据,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8477823/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com