Das folgende ist das Verlegen von zwei ListenWie analysieren und filtern Sie zwei Listen in JSP oder JSTL mit Lambda Expression und Stream API oder auf andere Weise?
Zuerst muss ich finden, ob zweite Liste Inhalt haben, dessen ID mit erster Liste übereinstimmt. So unnötig muss ich innerhalb der ersten Iteration für Schleife anwenden
<c:forEach var="mock" items="${form.aktivityList}">
<c:set value="false" var="ifAttachyExists" />
<c:forEach var="doc1" items="${form.aktivityList}">
<c:forEach var="doc1" items="${form.aktivityList}">
<c:forEach items="${form.attachyList}" var="attachy">
<c:if test="${ attachy.getId eq doc1.getId() }">
<c:set value="true" var="ifAttachyExists" />
</c:if>
</c:forEach>
</c:forEach>
</c:forEach>
<c:if test="${ifAttachyExists}">
<div class="table">
<c:forEach items="${form.attachyList}" var="attachy">
<c:if test="${ attachy.getId eq mock.getId() }">
DO THIS AND THIS AND THIS
</c:if>
</c:forEach>
</div>
</c:if>
</c:forEach>
Sobald der Wert von attachy wahr existiert drehen dann i auf der zweiten Liste analysieren und die gewünschten Ergebnisse angezeigt werden.
Der Code sieht schäbig aus. Könnte mir jemand helfen, wenn ich den Lambda-Ausdruck oder die Stream-API in JSP oder einer anderen Methode verwenden kann, um mit dieser Situation umzugehen?
https://stackoverflow.com/questions/3177733/how-to-avoid-java-code-in-jsp-files –
Danke, aber Ich bitte nicht um Scriptlets. Gibt es einen anderen Ausweg aus der oben genannten Situation? – fatherazrael