使用hibernate createSQLQuery方法在列表中存储映射

时间:2016-03-11 10:22:27

标签: java hibernate

我正在使用hibernate的createSQLQuery方法返回一个列表。

代码:

wget --continue the_url

另外,我想知道列表中会返回什么。它是否只包含值,还是包含列名。

如果它还包含列名,那么我想将此列表的每个元素分解为col名称及其值;这样我就可以将地图Query query=session.createSQLQuery("select name,marks,grade from student where id=12"); List list = query.list(); (地图<String,String>)添加到新列表中<colName,colValue>我该怎么做呢。

1 个答案:

答案 0 :(得分:2)

createSQLQuery返回

List<Object[]>

,它只包含值。 您可以根据需要提取它,例如

    List<Map<String,String>> = new ArrayList<HashMap<String,String>>();  
    for (Object row: queryResult)
                    {
                        Map <String, String> map = new HashMap<String, String>();
                        Object[] versionId = (Object [])row;
                        map.put("name", versionId[0]);
                        ... 
                        result.add(map);
                    }

或者您可以创建模型和转移查询结果到此处的实体列表spring hibernate.createSQLQuery return as custom entity