Visualizzazione dei risultati da 1 a 7 su 7

Hybrid View

  1. #1
    Intanto ti ringrazio e se hai suggerimenti da darmi io sono pronta ad accoglierli. Come dicevo, ci lavoro da poco tempo.

    Non so come dare un value univoco ad ogni macchinario essendo che non so a priori quale sia il numero totale di macchinari che mi restituirà la query. Mi viene in mente solo di fare un altro ciclo for che mi conti quante macchine restituisce la query e poi creare automaticamente un numero che sia il value di ogni macchina. Conosci altre soluzioni tu? L'ideale sarebbe dare come value l'id del macchinario che esce dalla query.

  2. #2
    Utente di HTML.it L'avatar di andbin
    Registrato dal
    Jan 2006
    residenza
    Italy
    Messaggi
    18,284
    Quote Originariamente inviata da Cristina12 Visualizza il messaggio
    se hai suggerimenti da darmi io sono pronta ad accoglierli.
    Se stai facendo una webapp che usa solo lo strato di Servlet/JSP, cioè non usi e non intendi usare framework di più alto livello (es. Struts, Spring, Stripes, ecc..) allora generalmente il minimo che si può fare per rendere la cosa un minimo "pulita" è la seguente:
    - le Servlet ricevono le request, eseguono validazioni, query su db e quant'altro, poi fanno un "forward" interno ad una pagina JSP.
    - le JSP fanno solo da "vista", presentano solo i dati sfruttando tipicamente dei custom tag come quelli di JSTL (e niente codice Java).

    Se tutto questo non ti è chiaro, potrai (e forse dovrai prima o poi) affrontarlo più avanti.

    Quote Originariamente inviata da Cristina12 Visualizza il messaggio
    Non so come dare un value univoco ad ogni macchinario
    Ma la tua tabella su DB avrà pur una chiave primaria .. no? Tipicamente è un campo numerico auto-incrementante (o da una sequence, a seconda del DBMS).
    Bene, la chiave primaria serve proprio anche in questi casi, cioè per identificare univocamente un record passando il suo Id in una request dal client.
    Andrea, Senior Java developerSCJP 5 (91%) • SCWCD 5 (94%)
    Java Versions Cheat Sheet

  3. #3
    Il punto è proprio questo. Forse non sono stata chiara io, vorrei passare proprio la chiave primaria dei macchinari per identificare il record. E il modo è stato:

    <input name="macchina" type="radio" value> <%=m.getSN()%>

    E' corretto?

  4. #4
    Utente di HTML.it L'avatar di andbin
    Registrato dal
    Jan 2006
    residenza
    Italy
    Messaggi
    18,284
    Quote Originariamente inviata da Cristina12 Visualizza il messaggio
    vorrei passare proprio la chiave primaria dei macchinari per identificare il record. E il modo è stato:

    <input name="macchina" type="radio" value> <%=m.getSN()%>

    E' corretto?
    No. Allora: innanzitutto la classe che modella il macchinario dovrà avere chiaramente tutti i campi necessari, id, descrizione ecc... (con i rispettivi metodi accessori getId/setId, getDescrizione/setDescrizione, ecc...).
    Poi quando fai la query chiaramente dovrai "tirar su" dai record anche il id e metterlo negli oggetti.

    A quel punto ogni volta che generi un radio-button farai:

    <input name="selezione" type="radio" value="<%=m.getId()%>"> <%=m.getDescrizione() ........... %>

    Nota la parte in viola, essa ti permette di emettere in output il id, che diventa il valore dell'attributo value.
    Andrea, Senior Java developerSCJP 5 (91%) • SCWCD 5 (94%)
    Java Versions Cheat Sheet

  5. #5
    Si, chiaramente la mia classe Macchinari.java contiene tutti i metodi set/get dei vari campi.
    Inoltre il metodo Visualizza_Macchinari della classe OperazioniDB mi restituisce un ArrayList con tutti i dati di ogni singolo macchinario.
    Ho capito il mio errore. Io inserivo
    <input name="selezione" type="radio" value> <%=m.getDescrizione()+ ": " + m.getModello() + " " +m.getSN()%>
    e invece nel value dovevo solo inserire il singolo
    value="<%=m.getSN()%>">

    Grazie mille per l'aiuto. Adesso spero di migliorare anche nel resto della programmazione

Tag per questa discussione

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 © 2026 vBulletin Solutions, Inc. All rights reserved.