簡體   English   中英

如何獲取json數組的值格式?

[英]How get json array value format?

我使用SQL查詢檢索表數據,並得到:

[["Abhijith","FAZT LORRY"]] 

但我想要作為JSONArray 請幫幫我。

我的服務類別是:

public List<Projectemployeeallocation> findAllAllocations() 
                                             throws JsonProcessingException {

    Session session = sessionFactory.openSession();

    String sql="SELECT emp.EFirstname,pro.ProjectName FROM 
                t_employeemaster emp JOIN t_projectemployeeallocation proall ON 
                emp.EmployeeAutoID=proall.EmployeeID JOIN t_projectmaster pro ON 
               proall.ProjectID=pro.ProjectID";

    Query query = session.createSQLQuery(sql);
    //query.setParameter("username", uname);
    List list = query.list();

    return list;
}

您可以使用jackson ,它是Java中強大的JSON庫。

List<String> list = new ArrayList<>();
try {
    String result = new ObjectMapper().writerFor(new TypeReference<List<String>>(){}).writeValueAsString(list);
} catch (JsonProcessingException e) {
    e.printStackTrace();
}

當查詢返回多列時, query.list()將返回List<Object[]>其中每個Object []包含DB返回的每一行的指定列數據。

由於查詢似乎僅返回一個結果,因此您可以返回list.get(0),然后使用gson,jackson等任何json庫將其轉換為jsonArray。

暫無
暫無

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

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