我正在處理一個 java-jsp 專案,并且我有一個要在 jsp 頁面中顯示的 java 物件串列。包含這些物件串列的 java 行如下:
private List<String> derivedNames;
private List<DiffResponse> diffResponses;
private List<String> pRResults;
DiffResponse 類是這樣的:
private String path;
private List<DiffOutput> diffOutputList;
private boolean isConflict;
在jsp檔案中,當我console.log diffOutput時,它回傳純java物件,如下所述,不顯示里面的內容。
org.example.rs.umt.DiffOutput@4d9d8911,
org.example.rs.umt.DiffOutput@3cc6fff7,
org.example.rs.umt.DiffOutput@311bce65,
org.example.rs.umt.DiffOutput@7611bf66,
org.example.rs.umt.DiffOutput@57e575b4,
org.example.rs.umt.DiffOutput@5c5711f8,
下面是檢索資料的jsp代碼:
<c:forEach items="${results.diffResponses}" var="diffResponse">
var distributionPath = '<c:out value="${diffResponse.distributionPath}"/>'
console.log("Dist: ",distributionPath);
var diffOutputList = '<c:out value="${diffResponse.diffOutputList}"/>'
console.log(diffOutputList);
</c:forEach>
這里的 distributionPath 是按預期獲得的
uj5u.com熱心網友回復:
那么你diffOutputList本身就是一個串列。所以你必須做一個這樣的嵌套<c:forEach>:
<c:forEach items="${results.diffResponses}" var="diffResponse">
var distributionPath = '<c:out value="${diffResponse.distributionPath}"/>'
console.log("Dist: ",distributionPath);
<c:forEach items="${diffResponse.diffOutputList}" var="diffOutput">
var diffOutput = '<c:out value="${diffOutput.???}"/>'
console.log(diffOutput);
</c:forEach>
</c:forEach>
所以,如果已經包括???在代碼中。在那里你必須設定一個存在于類 DiffOutput 中的欄位。
另一種方法是覆寫.toString()DiffOutput 類中的方法。
轉載請註明出處,本文鏈接:https://www.uj5u.com/yidong/331240.html
上一篇:如何從輸出中獲取熊貓資料框?
