基于查询结果列表构造JSON对象

Aes*_*eir 5 java spring json hibernate spring-mvc

试图找出我面临的问题的解决方案,但到目前为止无法在网上找到任何材料来帮助我.

基本上我所拥有的是一个休息控制器中的方法,它将查询字符串传递给我的Hibernate DAO并获取所请求的返回数据.

例如

@RequestMapping("/submitQuery")
    public Object submitQuery() {
// example of a query string, note this is dynamic and thus never hardcoded
        String query = "SELECT C.amount, C.transactionDate, R.amount, R.transactionDate FROM CAR C, RFT R";

        return  DAO.submitQuery(query);
    }
Run Code Online (Sandbox Code Playgroud)

DAO:

public List<T> submitQuery(String query) {
        Query q = getSession().createQuery(query);
        return q.list();
    }
Run Code Online (Sandbox Code Playgroud)

此查询字符串将是动态的,因此无法选择创建实体并将其附加到查询中.

上述方法将以下列格式返回数据:

[
    [
        -4890.38,
        1451826000000,
        25.04,
        1421499600000
    ],
    [
        -660,
        1413205200000,
        25.04,
        1421499600000
    ],
    [
        -10768.53,
        1423054800000,
        25.04,
        1421499600000
    ]
]
Run Code Online (Sandbox Code Playgroud)

因此没有标题,并且在该日期之上已经转换为数字.我想要实现的是让方法以下列格式返回结果:

[
    [
        "amountc" : -4890.38,
        "datec" : "01-03-2014",
        "amountr" : 25.04,
        "dater" : "01-03-2014"
    ],
    [
        "amountc" : -660,
        "datec" : "03-02-2014",
        "amountr" : 25.04,
        "dater" : "03-02-2014"
    ],
    [
        "amountc" : -10768.53,
        "datec" : "01-02-2014",
        "amountr" : 25.04,
        "dater" : "01-02-2014"
    ]
]
Run Code Online (Sandbox Code Playgroud)

任何建议/协助将不胜感激.

注意:不能使用DTO或实体,因为查询字符串是动态的并且更改.我有的查询字符串就是一个例子.

avi*_*iad 0

不知道它是什么样子的很难说T...但我相信TtoString方法是你的朋友。