目次 > 第2章 Server(Web)版チュートリアル > 2.7 一覧表示 > 2.7.5 画面の編集とページリンクの設定
2.7.5 画面の編集とページリンクの設定
本項では「一覧画面」を編集し、Server(Web)版が提供する一覧表示機能とページリンク機能のタグを利用して下図のリンクを作成する。
■ ページリンク機能
手順
本項では以下の作業が必要になる。
(1) 画面の編集
- “terasoluna-spring-thin-blank\webapps\userManager\list.jsp”を開き、以下のように編集する。
<%@ page contentType="text/html; charset=Windows-31J"%> <%@ taglib uri="/struts-html" prefix="html" %> <%@ taglib uri="/struts-bean" prefix="bean" %> <%@ taglib uri="/struts-logic" prefix="logic" %> <%@ taglib uri="/terasoluna-struts" prefix="ts" %> <%@ taglib uri="/terasoluna" prefix="t" %> <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> <html:html> <head> <meta http-equiv="Content-Type" content="text/html; charset=shift_jis"> <title>一覧表示画面</title> </head> <body> <table border="0" style="width:100%;"> <tr> <td align="center"> <html:img module="/" page="/image/terasoluna_logo.gif" /> </td> </tr> <tr> <td align="center"> <h2> 一覧表示画面 </h2> </td> </tr> </table> <!-- ここから --> <ts:pageLinks id="userListPageLinks" action="/userManager/listBL" name="_userManagerForm" rowProperty="row" totalProperty="totalCount" indexProperty="startIndex" currentPageIndex="now" totalPageCount="total"/> <div style="text-align:center"> <h5> <bean:write name="now"/>/<bean:write name="total"/>(<bean:write name="_userManagerForm" property="totalCount"/>) <p> <bean:write name="userListPageLinks" filter="false"/> <p> <table align="center" frame="box" border="1"> <tr> <td width="30" align="center"><b>ID</b></td> <td width="100" align="center"><b>NAME</b></td> <td width="30" align="center"><b>AGE</b></td> <td width="80" align="center"><b>BIRTH</b></td> </tr> <logic:iterate id="userBean" name="_userManagerForm" property="users"> <tr> <td align="center"> <bean:write name="userBean" property="id"/> </td> <td> <bean:write name="userBean" property="name"/> </td> <td align="center"> <bean:write name="userBean" property="age"/> </td> <td align="right"> <bean:write name="userBean" property="birth"/> </td> </tr> </logic:iterate> </table> <p> <bean:write name="userListPageLinks" filter="false"/> </h5> </div> <!-- ここまで --> <hr> <ts:link page="/logon/menuSCR.do">メニュー</ts:link> </body> </html:html>
ページリンクを表示するためには、<ts:pageLinks>タグを利用する。以下に属性を示す。
属性 | 説明 |
id | この属性に文字列が指定された場合、 ページリンクの出力先を画面ではなくページコンテキストに保存する。 この属性は保存するキーとなる。 |
action | 一覧表示画面の表示を行うアクションパス名を指定する。 |
name | 表示行数、開始行インデックス、一覧情報全行数を持つBeanを指定する。 |
rowProperty | 表示行数を保持する属性を指定する。 |
totalProperty | 一覧情報の全行数を保持する属性を指定する。 |
indexProperty | 表示開始インデックスを保持する属性を指定する。 |
currentPageIndex | 対応する一覧の現在ページ数をページコンテキストに保存する際のキーとなる。 |
totalPageCount | 対応する一覧の総ページ数をページコンテキストに保存する際のキーとなる。 |
一覧表示を行う際は、<logic:iterate>タグを利用する。以下に属性を示す。
属性 | 説明 |
id | 画面内で使用する変数名。 |
name | 一覧情報を持つBeanを指定する。 |
property | 出力対象のBean属性を指定する。 |
(2) ページリンクプロパティファイルの編集
ページリンクプロパティファイルには、直接遷移できるページ数の設定や、リンクの文字列を設定することができる。
- “terasoluna-spring-thin-blank\sources\pageLinks.properties”を開き、以下の設定を追加する。
pageLinks.maxDirectLinkCount=10 pageLinks.prev5.char=5ページ戻る pageLinks.prev1.char=前 pageLinks.next1.char=次 pageLinks.next5.char=5ページ進む