[java+Postgresql]Aprire connessione database

di il
8 risposte

[java+Postgresql]Aprire connessione database

Sono alle prime armi nello sviluppo java e database. Sto creando un applicativo per la gestione di un magazzino di un negozio e le vendite.
Ho creato, per iniziare, una classe Impiegato e una classe impiegatoDAO.
Leggendo un pò in giro e scopiazzando ho scoperto che si deve aprire questa connessione con il database(perdonatemi la carenza di vocaboli specifici), ad esempio
//codice non mio
public Control() {
        Connection con = null;
        
        try {
            
            Class.forName("com.mysql.jdbc.Driver");
            con = DriverManager.getConnection("jdbc:mysql://localhost:3306/purshka?useSSL=false","root","123stella");
            
            
        } catch (SQLException | ClassNotFoundException e){e.printStackTrace();}
        
        
        
        LF = new LoginFrame(this);
        ADAO = new ArticoloDAO(con);
        LADAO = new ListaArticoliDAO(con);
        LUDAO = new ListaUtentiDAO(con);
        UDAO = new UtenteDAO(con);
        mainFrame = new MainFrame(this);
        UF = new UtenteFrame(this);
        SF = new StoreFrame(this);
        LF.setVisible(true);
        
        }
Quello che mi interessa è questa parte:
Class.forName("com.mysql.jdbc.Driver");

            con = DriverManager.getConnection("jdbc:mysql://localhost:3306/purshka?useSSL=false","root","123stella");
Io ho il database scritto con postgresql, dove trovo quei dati tra parentesi del mio database??

8 Risposte

  • Re: [java+Postgresql]Aprire connessione database

    indisparte ha scritto:


    Quello che mi interessa è questa parte:
    Class.forName("com.mysql.jdbc.Driver");
    
                con = DriverManager.getConnection("jdbc:mysql://localhost:3306/purshka?useSSL=false","root","123stella");
    Io ho il database scritto con postgresql, dove trovo quei dati tra parentesi del mio database??
    Sì questa è specifica solo per MySQL. Per PostgreSQL è ovviamente differente. E serve chiaramente anche il jar del driver per PostgreSQL.

    Chiarisci innanzitutto quale versione di PostgreSQL stai usando e se il progetto che stai sviluppando usa Maven (o altro) come sistema di build.
  • Re: [java+Postgresql]Aprire connessione database

    andbin ha scritto:


    indisparte ha scritto:


    Quello che mi interessa è questa parte:
    Class.forName("com.mysql.jdbc.Driver");
    
                con = DriverManager.getConnection("jdbc:mysql://localhost:3306/purshka?useSSL=false","root","123stella");
    Io ho il database scritto con postgresql, dove trovo quei dati tra parentesi del mio database??
    Sì questa è specifica solo per MySQL. Per PostgreSQL è ovviamente differente. E serve chiaramente anche il jar del driver per PostgreSQL.

    Chiarisci innanzitutto quale versione di PostgreSQL stai usando e se il progetto che stai sviluppando usa Maven (o altro) come sistema di build.
    Utilizzo PostgreSQL 12 usando pgadmin 4, riguardo java uso eclipse e niente maven.Dove trovo il jar del drive, cosa inserisco in quelle parentesi?
  • Re: [java+Postgresql]Aprire connessione database

    indisparte ha scritto:


    Utilizzo PostgreSQL 12 usando pgadmin 4, riguardo java uso eclipse e niente maven.Dove trovo il jar del drive, cosa inserisco in quelle parentesi?
    Ok, ah versione di Java che stai usando?
  • Re: [java+Postgresql]Aprire connessione database

    andbin ha scritto:


    indisparte ha scritto:


    Utilizzo PostgreSQL 12 usando pgadmin 4, riguardo java uso eclipse e niente maven.Dove trovo il jar del drive, cosa inserisco in quelle parentesi?
    Ok, ah versione di Java che stai usando?
    versione 8
  • Re: [java+Postgresql]Aprire connessione database

    indisparte ha scritto:


    versione 8
    Perfetto. Allora vai nella pagina dei Download ufficiali per JDBC di PostgreSQL: https://jdbc.postgresql.org/download.htm
    Per la versione di PostgreSQL molto recente che stai usando e per Java 8, puoi prendere il primo link:

    "PostgreSQL JDBC 4.2 Driver, 42.2.11" ovvero il jar postgresql-42.2.11.jar

    Riguardo gli altri dati, li trovi sempre in quel sito nella sezione Documentation: Loading the Driver e Connecting to the Database
  • Re: [java+Postgresql]Aprire connessione database

    andbin ha scritto:


    indisparte ha scritto:


    versione 8
    Perfetto. Allora vai nella pagina dei Download ufficiali per JDBC di PostgreSQL: https://jdbc.postgresql.org/download.htm
    Per la versione di PostgreSQL molto recente che stai usando e per Java 8, puoi prendere il primo link:

    "PostgreSQL JDBC 4.2 Driver, 42.2.11" ovvero il jar postgresql-42.2.11.jar

    Riguardo gli altri dati, li trovi sempre in quel sito nella sezione Documentation: Loading the Driver e Connecting to the Database
    Ok ultime due domande visto che sei stato gentilissimo (ti ringrazio infinitamente tralaltro), il file jar scaricato devo metterlo in un package particolare o farci cosa?
    Dato che non ho cambiato username e psw al database come username cosa viene usato di default?L'url richiestomi è quello della barra in alto di pgadmin o..?
  • Re: [java+Postgresql]Aprire connessione database

    indisparte ha scritto:


    il file jar scaricato devo metterlo in un package particolare o farci cosa?
    Dato che hai un normalissimo progetto Java (e nemmeno con Maven), la cosa più semplice e "pulita" è fare una cartella "lib" (o libs o come vuoi) nella home del progetto (insomma, che sia allo stesso livello della "src").
    Poi dalle opzioni del progetto: sezione Java Build Path, scheda Libraries e poi usi il pulsante Add JARs... (il primo in alto-destra) e vai a rintracciare il jar sotto la lib/libs. Tutto qui.

    indisparte ha scritto:


    Dato che non ho cambiato username e psw al database come username cosa viene usato di default?L'url richiestomi è quello della barra in alto di pgadmin o..?
    Se non hanno cambiato nelle versioni più recenti, quando installi il PostgreSQL l'installer ad un certo punto dovrebbe averti chiesto almeno la password per l'utente postgres (che è sostanzialmente il "superuser").
    E comunque se hai fatto l'accesso da pgadmin .... l'account lo conosci ... quindi sì, usa pure quello. Ma in futuro valuta l'opzione di fare uno user specifico per la tua base dati e poi grantare tutte le tabelle/sequence/ecc con quell'utente.
  • Re: [java+Postgresql]Aprire connessione database

    andbin ha scritto:


    indisparte ha scritto:


    il file jar scaricato devo metterlo in un package particolare o farci cosa?
    Dato che hai un normalissimo progetto Java (e nemmeno con Maven), la cosa più semplice e "pulita" è fare una cartella "lib" (o libs o come vuoi) nella home del progetto (insomma, che sia allo stesso livello della "src").
    Poi dalle opzioni del progetto: sezione Java Build Path, scheda Libraries e poi usi il pulsante Add JARs... (il primo in alto-destra) e vai a rintracciare il jar sotto la lib/libs. Tutto qui.

    indisparte ha scritto:


    Dato che non ho cambiato username e psw al database come username cosa viene usato di default?L'url richiestomi è quello della barra in alto di pgadmin o..?
    Se non hanno cambiato nelle versioni più recenti, quando installi il PostgreSQL l'installer ad un certo punto dovrebbe averti chiesto almeno la password per l'utente postgres (che è sostanzialmente il "superuser").
    E comunque se hai fatto l'accesso da pgadmin .... l'account lo conosci ... quindi sì, usa pure quello. Ma in futuro valuta l'opzione di fare uno user specifico per la tua base dati e poi grantare tutte le tabelle/sequence/ecc con quell'utente.
    GRAZIE
Devi accedere o registrarti per scrivere nel forum
8 risposte