0

私は市民情報を収集するフォームを持っているので、クラス市民がいます

市民クラス

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> 
4

1 に答える 1

1

これを試してください...コントローラーで

model.addAttribute("citizens",citizenManager.getListOfCitizens(citizen));

jsp でこれを実行します。 1. これを jsp ページの上部に追加します

<%@taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c" %>


。 2. このコードを html 本文に追加します。

<c:forEach items="${citizens}" var="citizen">
First name:- ${citizen.fName} , Last Name:- ${citizen.lName}
</c:forEach>

お役に立てれば

于 2013-03-05T16:24:04.753 に答える