Visualizzazione dei risultati da 1 a 4 su 4
  1. #1
    Utente di HTML.it
    Registrato dal
    Feb 2008
    Messaggi
    173

    [JAVA STRUTS 1.3] Risultato query in jsp

    Salve,
    dovrei far visualizzare il risultato di una query all'interno di una pagina jsp dopo una action.
    Non sto capendo cosa devo passare alla action e cosa alla jsp (ho letto sul tag iterate).

    Questo è il codice della query:
    codice:
    public ArrayList<Student> searchStudent(String name) {
    
    		Connection con = db.getConnection();
    		PreparedStatement stmt = null;
    		ResultSet rs = null;
    		ArrayList<Student> students = new ArrayList<Student>();
    
    		try {
    			String retrieve = "";
    			if (name!=null && !name.equals("")) {
    				retrieve = "select * from students where lastname like ? order by lastname, firstname";
    			} else {
    				retrieve = "select * from students order by lastname, firstname";
    			}
    			
    			stmt = con.prepareStatement(retrieve);
    			if (name!=null && !name.equals("")) {
    				stmt.setString(1, "%" + name + "%");
    			}
    			
    			rs = stmt.executeQuery();
    			
    			while (rs.next()) {
    				Student student = new Student();
    				student.setCode(rs.getInt("code"));
    				student.setFirstName(rs.getString("firstname"));
    				student.setLastName(rs.getString("lastname"));
    				long secs = rs.getDate("birthdate").getTime();
    				Date birthDate = new java.util.Date(secs);
    				student.setBirthDate(birthDate);
    				students.add(student);
    			}
    
    		} catch (SQLException sqle) {
    			sqle.printStackTrace();
    		} finally {
    			try {
    				if (rs!=null) { rs.close(); rs=null; }
    				if (stmt!=null) { stmt.close(); stmt=null; }
    				db.closeConnection(con);
    			} catch (SQLException e) {
    				e.printStackTrace();
    			}
    		}
    
    		return students;
    	}
    }

    Grazie a tutti

  2. #2
    Utente di HTML.it L'avatar di andbin
    Registrato dal
    Jan 2006
    residenza
    Italy
    Messaggi
    18,284

    Re: [JAVA STRUTS 1.3] Risultato query in jsp

    Originariamente inviato da mcfede88
    Non sto capendo cosa devo passare alla action e cosa alla jsp (ho letto sul tag iterate).
    Nella action:

    codice:
    ArrayList<Student> students = ...... invoca searchStudent .......
    
    request.setAttribute("listaStudenti", students);    // listaStudenti è un nome come qualunque altro possibile
    Nella pagina JSP si possono usare i custom tag di JSTL o di un'altra tag library (es. di Struts):

    JSTL insieme ad EL (Expression Language):
    codice:
    <c:forEach items="${requestScope.listaStudenti}" var="studente">
      First name: <c:out value="${studente.firstName}"/>
      .....
    </c:forEach>
    Struts con la Logic Taglib e la Bean Taglib:
    codice:
    <logic:iterate id="studente" name="listaStudenti" scope="request">
      First name: <bean:write name="studente" property="firstName"/>
      ......
    </logic:iterate>
    Mi paiono chiare le differenze e le similitudini tra i due modi!
    Andrea, andbin.devSenior Java developerSCJP 5 (91%) • SCWCD 5 (94%)
    java.util.function Interfaces Cheat SheetJava Versions Cheat Sheet

  3. #3
    Utente di HTML.it
    Registrato dal
    Feb 2008
    Messaggi
    173
    Ok grazie...
    Una cosa che non ho capito:
    nell'action come li dico di andare nella jsp?

  4. #4
    Utente di HTML.it L'avatar di andbin
    Registrato dal
    Jan 2006
    residenza
    Italy
    Messaggi
    18,284
    Originariamente inviato da mcfede88
    nell'action come li dico di andare nella jsp?
    Il execute() restituisce un ActionForward, no? E allora devi andare a cercare il giusto "forward" che è mappato nel file di configurazione di Struts.

    return mapping.findForward("success");

    "success" mappato:

    codice:
    <action-mappings>
      <action .......... >
    
        <forward name="success" path="/blabla.jsp"/>
      </action>
    .....
    Andrea, andbin.devSenior Java developerSCJP 5 (91%) • SCWCD 5 (94%)
    java.util.function Interfaces Cheat SheetJava Versions Cheat Sheet

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.