2017-01-30 14 views
0

私はSQLクエリを使用して、テーブルのデータを取得し、私が得た:json配列の値フォーマットはどのように取得されますか?

[["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; 
} 
+0

使用GSONライブラリgson、ジャクソンなどの任意のJSONライブラリを使用してjsonArrayに変換することができる唯一の結果を返すように思われます。 String json = new Gson()。toJson(リスト); – gifpif

+3

[JsonをJavaでListに変換する方法]の複写が可能です(http://stackoverflow.com/questions/14228912/how-to-convert-list-to-json-in-java) – walen

+0

Stringを解析する方法を検索するJavaのJsonに変換します。あなたはインターネット上であなたを助けるために十分なチュートリアルで多くのAPIを持っています – AxelH

答えて

0

あなたはJavaでJSONのための強力なライブラリであるjacksonを使用することができます。クエリが複数の列を返すよう

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

query.list()はDBによって返される行ごとに各オブジェクト[]を含む指定された列データとList<Object[]>を返します。クエリとして

あなたはlist.get返す(0)、その後、などそのための

関連する問題