Docsity
Docsity

Prepara i tuoi esami
Prepara i tuoi esami

Studia grazie alle numerose risorse presenti su Docsity


Ottieni i punti per scaricare
Ottieni i punti per scaricare

Guadagna punti aiutando altri studenti oppure acquistali con un piano Premium


Guide e consigli
Guide e consigli


Database con Java - tpsi, Dispense di Informatica

Dato un database localizzato in localhost, con porta 3306 e chiamato “Musica” contenente una tabella chiamata “Canzone” così composta Canzone(ID, Autore, Titolo, Durata) con ID e Durata numerici e Titolo e Autore testuali Scrivere le seguenti parti di codice da inserire in un progetto WEB java 1. All’interno di una classe chiamata “GestioneDB” che si occupa di gestire il database scrivere un metodo che connettendosi al database cancelli una canzone passando l’ID. 2. All’interno di una classe chiamata “GestioneDB” che si occupa di gestire il database scrivere un metodo che connettendosi al database estrae tutte le canzoni di un dato autore. 3. Scrivere una pagina form.html che prende in input l’id e lo invia alla servlet “cancellaCanzone” per eliminare la canzone. 4. Data una Servlet chiamata cancellaCanzone all’interno del progetto scrivere il metodo doPost che si occupa prelevare il dato inviato dal form e richiamare il metodo di GestioneDB per cancellare la canzone. Salvare l’id dell

Tipologia: Dispense

2022/2023

In vendita dal 13/09/2023

carla-boscolo
carla-boscolo 🇮🇹

4.5

(13)

520 documenti

1 / 8

Toggle sidebar

Questa pagina non è visibile nell’anteprima

Non perderti parti importanti!

bg1
PROVA DI VERIFICA
Dato un database localizzato in localhost, con porta 3306 e chiamato “Musica” contenente
una tabella chiamata “Canzone” così composta
Canzone(ID, Autore, Titolo, Durata) con ID e Durata numerici e Titolo e Autore testuali
Scrivere le seguenti parti di codice da inserire in un progetto WEB java
1. All’interno di una classe chiamata “GestioneDB” che si occupa di gestire il database
scrivere un metodo che connettendosi al database cancelli una canzone passando
l’ID.
2. All’interno di una classe chiamata “GestioneDB” che si occupa di gestire il database
scrivere un metodo che connettendosi al database estrae tutte le canzoni di un dato
autore.
3. Scrivere una pagina form.html che prende in input l’id e lo invia alla servlet
“cancellaCanzone” per eliminare la canzone.
4. Data una Servlet chiamata cancellaCanzone all’interno del progetto scrivere il
metodo doPost che si occupa prelevare il dato inviato dal form e richiamare il metodo
di GestioneDB per cancellare la canzone. Salvare l’id della canzone cancellata come
variabile di sessione e fare un forward ad una pagina JSP tramite il request
dispatcher .
pf3
pf4
pf5
pf8

Anteprima parziale del testo

Scarica Database con Java - tpsi e più Dispense in PDF di Informatica solo su Docsity!

PROVA DI VERIFICA

Dato un database localizzato in localhost, con porta 3306 e chiamato “Musica” contenente una tabella chiamata “Canzone” così composta Canzone(ID, Autore, Titolo, Durata) con ID e Durata numerici e Titolo e Autore testuali Scrivere le seguenti parti di codice da inserire in un progetto WEB java

  1. All’interno di una classe chiamata “GestioneDB” che si occupa di gestire il database scrivere un metodo che connettendosi al database cancelli una canzone passando l’ID.
  2. All’interno di una classe chiamata “GestioneDB” che si occupa di gestire il database scrivere un metodo che connettendosi al database estrae tutte le canzoni di un dato autore.
  3. Scrivere una pagina form.html che prende in input l’id e lo invia alla servlet “cancellaCanzone” per eliminare la canzone.
  4. Data una Servlet chiamata cancellaCanzone all’interno del progetto scrivere il metodo doPost che si occupa prelevare il dato inviato dal form e richiamare il metodo di GestioneDB per cancellare la canzone. Salvare l’id della canzone cancellata come variabile di sessione e fare un forward ad una pagina JSP tramite il request dispatcher.

SOLUZIONE PROF

Dato un database localizzato in localhost, con porta 3306 e chiamato “Musica” contenente una tabella chiamata “Canzone” così composta Canzone(ID, Autore, Titolo, Durata) con ID e Durata numerici e Titolo e Autore testuali Scrivere le seguenti parti di codice da inserire in un progetto WEB java

  1. All’interno di una classe chiamata “GestioneDB” che si occupa di gestire il database scrivere un metodo che connettendosi al database cancelli una canzone passando l’ID. public void CancellaCanzone(int id) { try { Class.forName("org.mariadb.jdbc.Driver"); } catch (ClassNotFoundException ex) { Logger.getLogger(GestioneDB.class.getName()).log(Level.SEVERE, null, ex); } Connection connessione =null; t ry { connessione = DriverManager.getConnection(stringaConnessione,user,pass); String query = "DELETE FROM Canzone WHERE ID=?"; PreparedStatement prepared = connessione.prepareStatement(query); prepared.setInt(1, id); prepared.executeUpdate(); } catch (SQLException ex) { Logger.getLogger(GestioneDB.class.getName()).log(Level.SEVERE, null, ex); } finally { if(connessione!=null){ try { connessione.close(); } catch (SQLException ex) { Logger.getLogger(GestioneDB.class.getName()).log(Level.SEVERE, null, ex); } } } }
  1. Scrivere una pagina form.html che prende in input l’id e lo invia alla servlet “cancellaCanzone” per eliminare la canzone.
  1. Data una Servlet chiamata cancellaCanzone all’interno del progetto scrivere il metodo doPost che si occupa prelevare il dato inviato dal form e richiamare il metodo di GestioneDB per cancellare la canzone. Salvare l’id della canzone cancellata come variabile di sessione e fare un forward ad una pagina JSP tramite il request dispatcher. protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { if(request.getParameter("submitCancella")!=null){ GestioneDB connessioneDB = new GestioneDB("localhost","3306","Musica","utente","password"); connessioneDB.cancellaCanzone(Integer.parseInt(request.getParameter("id"))); request.getSession().setAttribute(“id”, Integer.parseInt(request.getParameter("id"))); //request.setAttribute(“id”, Integer.parseInt(request.getParameter("id")); request.getRequestDispatcher("cancella.jsp").forward(request, response); } }

Esercizio 1

All’interno di una classe chiamata “GestioneDB” che si occupa di gestire il database scrivere un metodo che connettendosi al database cancelli una canzone passando l’ID. index.html

ID

GestioneDB.java /* TRAMITE ID CANCELLARE UNA CANZONE */ public void deleteCanzonebyId(String id){ ArrayList listaID = new ArrayList(); try { Class.forName("org.mariadb.jdbc.Driver"); } catch (ClassNotFoundException ex) { Logger.getLogger(GestioneDB.class.getName()).log(Level.SEVERE, null, ex); } Connection connessione =null; try{ connessione = DriverManager.getConnection(stringaConnessione,user,pass); String query="Delete * From canzone where ID =?"; PreparedStatement prepared = connessione.prepareStatement(query); prepared.setString(1, id); ResultSet rs = prepared.executeQuery(); } catch (SQLException ex) { Logger.getLogger(GestioneDB.class.getName()).log(Level.SEVERE, null, ex); } finally { if(connessione!=null){ try { connessione.close(); } catch (SQLException ex) { Logger.getLogger(GestioneDB.class.getName()).log(Level.SEVERE, null, ex);

/* TRAMITE NOME AUTORE ESTRARRE INFORMAZIONI */

public ArrayList getCanzonebyAutore(String autore){ ArrayList listaID = new ArrayList(); try { Class.forName("org.mariadb.jdbc.Driver"); } catch (ClassNotFoundException ex) { Logger.getLogger(GestioneDB.class.getName()).log(Level.SEVERE, null, ex); } Connection connessione =null; try{ connessione = DriverManager.getConnection(stringaConnessione,user,pass); String query="Select * From canzone where Autore=?"; PreparedStatement prepared = connessione.prepareStatement(query); prepared.setString(1, autore); ResultSet rs = prepared.executeQuery(); while(rs.next()){ listaID.add(rs.getString("Autore")); listaID.add(rs.getString("Titolo")+"\n"); listaID.add(rs.getString("Durata")+"\n"); } } catch (SQLException ex) { Logger.getLogger(GestioneDB.class.getName()).log(Level.SEVERE, null, ex); } finally { if(connessione!=null){ try { connessione.close(); } catch (SQLException ex) { Logger.getLogger(GestioneDB.class.getName()).log(Level.SEVERE, null, ex); } } } return listaID; } Estrazione.java @Override protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {

if(request.getParameter("autore")!=null){ GestioneDB mioDB = new GestioneDB("localhost","3306","dbtest","utente","password"); ArrayList listaID; listaID = mioDB. getCanzonebyAutore(request.getParameter("autore")); int i=0; for (i=0;i