spring - i want to get alias column name and value in java spring hibernate
问题描述
String mainQuery = "select x as CONDITION_"+i+" from xyz";
SQLQuery sqlQuery = this.getSession().createSQLQuery(mainQuery);
from this query i will get allias column like
CONDITION_x
------------
value_x(anything)
here x is int value it will increment 0,1,2...
From this i want Json like ,
[
{
"CONDITION_0" :"value",
"CONDITION_1" :"value"
}
]
And this is in spring hibernate. Please help,TIA.
解决方案
使用 hibernateResultTransformer
将 SQLQuery 结果转换为Map<k,v>
对象,其中查询中的别名列名作为k-key和行值作为v-value。
String mainQuery = "select x as CONDITION_"+i+" from xyz";
SQLQuery sqlQuery = this.getSession().createSQLQuery(mainQuery);
List<Map<String,Object>> result = sqlQuery.setResultTransformer(Criteria.ALIAS_TO_ENTITY_MAP).list();
通过这个,你可以得到你所期望的 json 结果。