2017-03-06 45 views
0

我在一個Spring應用程序控制器與此代碼:如何在@RestController響應中打印List()?

@RequestMapping("/") 
@ResponseBody 
public ResponseObject index(){ 
    System.out.println(this.sf); 
    Session session = sf.openSession(); 
    List<Project> projects = session.createQuery("from Project").list(); 
    session.close(); 
    System.out.println(projects); 
    return new ResponseObject(projects); 
} 

我試圖用這個代碼返回List<Project>,也是我的新創建的對象ResponseObject

public class ResponseObject { 
    protected Object data; 
    protected Object error; 

    public ResponseObject(Object data) { 
     this.data = data; 
    } 

    public Object getData() { 
     return data; 
    } 

    public void setData(Object data) { 
     this.data = data; 
    } 

    public Object getError() { 
     return error; 
    } 

    public void setError(Object error) { 
     this.error = error; 
    } 
} 

但在所有我的JSON響應看起來像這樣:{"data":[{}],"error":null}

Projects輸出爲:[Project{id=1, name='Digital project'}]

誰能告訴我,爲什麼在JSON不包括我的列表?謝謝!

+1

你檢查過 - 執行時實際插入了多少個項目:ession.createQuery(「from Project」)。list()? –

+0

Hoi Gerrit ;-) 看看這個:http://softwareengineering.stackexchange.com/questions/337319/object-design-for-rest-result-including-error-handling。前一段時間我問了一個關於ResponseObjects的問題,或許這對你有用 – Jelle

回答

0

protected Object data;

更改爲

protected List<Object> data;