Spring 3 MVC アプリケーションで Apache Tiles 2 を使用しています。レイアウトは、左側にメニュー、右側に本文です。
レイアウト.jsp
<table>
<tr>
<td height="250"><tiles:insertAttribute name="menu" /></td>
<td width="350"><tiles:insertAttribute name="body" /></td>
</tr>
</table>
menu.jsp
<div><ul>
<li><a href="account.html">account</a></li>
<li><a href="history.html">history</a></li></ul></div>
history.jsp の本体
<c:forEach var="history" items="${histories}"><p><c:out value="${history}"></c:out></p></c:forEach>
履歴のコントローラーもあります
@Controller
public class HistoryController {
@RequestMapping("/history")
public ModelAndView showHistory() {
ArrayList <String> histories = read from DB.
return new ModelAndView("history","histories",histories);
}
}
そのため、メニューの履歴リンクをクリックするたびに、showHistory() が呼び出されます。
しかし、もっと複雑なケースがあります。履歴 DB には数百のエントリがあるため、history.jsp が最初に表示されたときにのみ最初の 10 件を表示し、次に、別のコントローラーを追加して次の 10 件を表示するために、history.jsp に「さらに履歴を表示」ボタンを追加することにしました。
問題は、ユーザーが次のことを行う場合です。
- 履歴リンクをクリックすると、0 ~ 9 件の履歴が表示されます。
- 「履歴をもっと見る」をクリックすると10~19件表示され、
- アカウント リンクをクリックしてアカウント ページに戻り、
- history リンクをもう一度クリックすると、history.jsp 表示 10 から 19 ではなく、0 から 9 が表示されます。
最初から表示するのではなく、最後にアクセスした履歴を表示するように history.jsp を作成するにはどうすればよいですか。
私はSpringに非常に慣れていません。すべての提案を歓迎します。ありがとう。