首页 > 解决方案 > java - 如何将sql查询中的多列转换为java中的一个对象?

问题描述

好的,我只是想从我的表“ItemList”中获取对象列表。我觉得我只是弄乱了我正在使用的查询。这是我正在运行的代码:

    public List<GetListsDTO> getAllLists() {
        Query query = currentSession.createQuery("SELECT L.name, L.listType, L.position FROM ItemList L ORDER BY L.position ASC");

        try{
            System.out.println(query.list());
            return (List<GetListsDTO>) query.list();
        }
        catch(Exception e){
            e.printStackTrace();
            return null;
        }
    }

这是 Postman 的结果:

[
    [
        "list1",
        "Clothing",
        1
    ],
    [
        "list2",
        "Clothing",
        2
    ]
]

如您所见,它检索了正确的信息,但我不知道如何将其转换为实际对象,而不是将其作为字符串数组。

帮助将不胜感激:)

编辑:这是我正在寻找的结果:

[
    {
        "name": "list1",
        "listType": "Clothing",
        "position": 1
    },
    {
        "name": "list2",
        "listType": "Clothing",
        "position": 2
    }
]

标签: javamysqlarraysjsoncasting

解决方案


推荐阅读