Visualizzazione dei risultati da 1 a 9 su 9
  1. #1

    java quando fare la connessione al db

    ciao
    scusate la mia ignoranza , ho la seguente applicazione :
    un pannello principale ha un menu a tendina con ha una serie di voci ;
    selezionando una di esse si istanzia una classe che visualizza un JFRAME
    per inserire dei dati , nel JFrame è presente un bottone che attiva
    l'inserimento di una nuova riga nel db (Mysql) ;
    volevo sapere quando coonviene fare la connessione al db :
    nel pannello principale col menu a tendina o nel JFrame , dopo
    i controlli dei campi inseriti ?

    mi sembra che nel secondo caso si effettuino molte operazioni sul db
    rallentando l'applicazione , però non saprei come fare la connessione ,
    gli inserimenti e la disconnessione nel primo caso

    grazie dell'attenzione
    ciao

  2. #2
    Utente di HTML.it L'avatar di Alex'87
    Registrato dal
    Aug 2001
    residenza
    Verona
    Messaggi
    5,802

    Re: java quando fare la connessione al db

    Se l'applicazione ha bisogno spesso del database ti conviene aprire la connessione all'avvio e chiuderla al termine. Dipende da quante query fa e con che frequenza...
    SpringSource Certified Spring Professional | Pivotal Certified Enterprise Integration Specialist
    Di questo libro e degli altri (blog personale di recensioni libri) | ​NO M.P. TECNICI

  3. #3
    grazie
    ho però questo dubbio :
    faccio la connessione sulla classe main , la quale chiama una classe che ,
    oltre a fare la connessione , ha anche tutti i metodi per gestire il db
    (insert , delete , modify , ecc) ;
    quando sono sul JFrame di inserimento dati non sò come richiamare il
    metodo di inserimento (che sta sull'oggetto istanziato dalla classe main
    per far la connessione)
    grazie
    ciao

  4. #4
    Utente di HTML.it L'avatar di Alex'87
    Registrato dal
    Aug 2001
    residenza
    Verona
    Messaggi
    5,802
    Originariamente inviato da gbu123
    grazie
    ho però questo dubbio :
    faccio la connessione sulla classe main , la quale chiama una classe che ,
    oltre a fare la connessione , ha anche tutti i metodi per gestire il db
    (insert , delete , modify , ecc) ;
    quando sono sul JFrame di inserimento dati non sò come richiamare il
    metodo di inserimento (che sta sull'oggetto istanziato dalla classe main
    per far la connessione)
    grazie
    ciao
    Basta che passi alla classe che maneggia il JFrame un riferimento all'oggetto che si occupa del db.

    La tua classe estende JFrame, giusto?
    Dichiari un attributo del tipo del controllore del db e attraverso o un costruttore o un setter lo valorizzi...
    SpringSource Certified Spring Professional | Pivotal Certified Enterprise Integration Specialist
    Di questo libro e degli altri (blog personale di recensioni libri) | ​NO M.P. TECNICI

  5. #5
    Ancora meglio sarebbe creare un classe Singleton che si occuperà di gestire la connessione al database.
    In questo modo ti semplifichi la vita non dovendo passare ogni volta l'oggetto connessione.

  6. #6
    <<Ancora meglio sarebbe creare un classe Singleton che si occuperà di gestire la connessione al database.
    In questo modo ti semplifichi la vita non dovendo passare ogni volta l'oggetto connessione.>>

    vorrei provare questa soluzione , non sono un utente esperto , per favore potresti spiegarmi ,
    anche non dettagliatamente , come si fa ?
    scusa la mia petulanza
    grazie

    ciao

  7. #7
    Nel link che ti ho postato c'è anche come implementare un singleton in java non vedo quale sia il problema....
    Crei la tua classe Singleton, all'interno dichiari un attributo di tipo Connection, con il proprio get, che valorizzerai nel costruttore privato (cioè effettuerai la connessione).
    A questo punto in tutte le Classi in cui avrai bisogno di utilizzare la connessione ti basterà richiamare Singleton.getInstance().getConnection() per accedere alla connessione del tuo programma.

  8. #8
    ok

    scusa la seccatura , se ho capito bene devo definire una classe :

    codice:
    public class MioSingolo {
        private static MioSingolo istanza = null;
     
        private MioSingolo() {}
     
        // Metodo della classe impiegato per accedere al Singleton
        public static synchronized MioSingolo getMioSingolo() {
            if (istanza == null) 
                istanza = new MioSingolo();
            return istanza;
        }
    }
    che verrà istanziata una sola volta e nella quale aggiungerò tutti i metodi
    di accesso al db : connessione , insert, ecc. ;
    ogni volta che dovrò usare un metodo di accesso al db , dovrò prima chiamare
    il metodo getMioSingolo ;
    è corretto o nò ?
    scusa ancora
    ciao


    prima di

  9. #9
    Esatto

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.