簡體   English   中英

如何在Java中將新鍵值添加到現有List Map對象

[英]How to add new key value to existing List Map object in java

在下面的代碼中獲取文檔映射,我想向文檔對象添加新的鍵和值。

public List<Map<String, Object>> getDocuments() {
    String sql = "Select * from docs";
    List<Map<String, Object>> Documents = jdbcTemplateObject.queryForList(sql);
    return Documents;
}

輸出:

[{Id=DOC10,Name=Test Document,Date=10-12-17}],
[{Id=DOC11,Name=Sample Document,Date=15-12-17}]

如何將新的k,v添加到此List<Map>對象,以使輸出看起來像這樣?

[{Id=DOC10,Name=Test Document,Date=10-12-17,Access=true}],
[{Id=DOC11,Name=Sample Document,Date=15-12-17,Access=true}]

您可以遍歷列表,並為每個映射添加一個新的鍵值對:

for(Map<String, Object> map : Documents){
     map.put("Access", true);
}

另一個解決方案,取決於jdbcTemplateObject.queryForList(sql); 要做的就是在查詢中添加值。

select *, 1 as Access from docs

這似乎遍歷每列以將其插入到Map

注意:查詢不一定與DBMS無關! 布爾值實際上不是SQL類型

遍歷“列表”>“文檔”並獲取“地圖對象”,然后將鍵值對放入該“地圖對象”,例如

List<Map<String, Object>> Documents = jdbcTemplateObject.queryForList(sql);
    for (Map<String, Object> map : Documents) {
        map.put(key, value);
    }

暫無
暫無

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

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