私は市民情報を収集するフォームを持っているので、クラス市民がいます
市民クラス
public class Citizens implements Serializable{
private int socialSecurityNumber;
private String fName;
private String lName;
private String oName;
private String photo;
private int countryId;
private String addLn1;
private String addLn2;
private String addLn3;......
where_clauseに基づいて市民のリスト/単一のレコードを返すDAOクラス。これは、任意の値または値の組み合わせにすることができます。
if(where_clause != null){
//add WHERE to string
where_clause = "WHERE " + where_clause;
//get length of string
int where_clause_length = where_clause.length();
//remove last 'and' from string
where_clause = where_clause.substring(0, where_clause_length - 5);
logger.info(where_clause);
}
String sql = "SELECT socialSecurityNumber, fName, lName, oName, photo, countryId, addLn1, addLn2, addLn3,"
+"genderId, ethnicityId, skinColorId, eyeColorId, hairColorId, occupationId, phoneNo, maritalStatusId,"
+"noticableFeatures, weight, height, citizenTypeId, dob "
+"FROM crimetrack.tblcitizens " + where_clause;
logger.debug(sql);
List<Citizens> listOfCitizens = getJdbcTemplate().query(sql, new CitizensMapper());
return listOfCitizens;
コントローラでは、これが発生します。
if (user_request.equals("Query")){
logger.debug("about to preform query");
if(citizenManager.getListOfCitizens(citizen).isEmpty()){
model.addAttribute("icon","ui-icon ui-icon-circle-close");
model.addAttribute("results","Notice: Query Caused No Records To Be Retrived!");
}
model.addAllAttributes(citizenManager.getListOfCitizens(citizen));
return new ModelAndView("citizen_registration");
}
}
ここでの問題は、このクエリが3つのレコードを返すが、最後のレコードのみがビューに表示されることです。下はjspの外観で、スプリングフォームタグを使用しています。私がやりたいのは、次のレコードボタンを追加することです。ユーザーが次のレコードをクリックすると、リスト内の次のレコードに移動して、ユーザーに表示します。このアプローチを使用してこれを行うことができない場合、これを行うための最良のアプローチは何ですか。Paginationについて読んでいましたが、このアプリケーションにどのように実装できるかわかりません。誰かが私を助けたり、これにアプローチする方法について私を導いてくれますか?
Jsp
<form:form id="citizenRegistration" name ="citizenRegistration" method="POST" commandName="citizens" action="citizen_registration.htm">
<div id="divRight" class="mainDiv">
<div class="divGroup" id="divCharInfo">
<label id="status"></label>
<div id="camera"></div>
<div><p><canvas id="canvas" height="240" width="320"></canvas><canvas id="canvas2" height="240" width="320"></canvas><form:errors path="photo" class="errors"/></div>
<form:input path="photo" id="photo" type="hidden"/>
<input id="upload" type="button" value="Take Photo">
<input id="retake" type="button" value="Re-Take Photo">
<ol>
<li>
<label>Select Gender</label>
<form:select path="genderId" id="genderId" title="Select Your Gender">
<form:options items = "${gender.genderList}" itemValue="genderId" itemLabel="genderDesc" />
</form:select>
<form:errors path="genderId" class="errors"/>
</li>
<li><form:label for="weight" path="weight">Enter Weight <i>(lbs)</i></form:label>
<form:input path="weight" id="weight" title="Enter Weight"/><form:errors path="weight" class="errors"/>
</li>
<li><form:label for="height" path="height">Enter Height <i>(feet)</i></form:label>
<form:input path="height" id="height" title="Enter Height"/><form:errors path="height" class="errors"/>
</li>