Pagina 1 di 2 1 2 ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 20
  1. #1
    Utente di HTML.it
    Registrato dal
    Oct 2007
    Messaggi
    73

    [Driver JDBC/ODBC] Database MySql e applicazione Java

    Ciao a tutti, vi spiego la situazione.
    Ho un'applicazione Java (un .bat in Windows ed un .jar in Linux) che dovrebbe prendere i dati da un database ed elaborarli in qualche modo. Quest'applicazione è bella e pronta nel senso che per la connessione ad un database ha due campi in cui si richiede all'utente di inserire:

    - l'URL di un database
    - Il driver da usare
    - Locazione del driver

    Ora, premesso questo vi spiego il problema.
    Quest'applicazione funziona benissimo con un database di tipo Access o CSV usando il driver nativo "MS Access Driver" (che altro non è che un driver bridge JDBC-ODBC). Il fatto è che io voglio usare l'applicazione in un ambiente Linux (quindi usare il .jar), e quindi dovrei usare un driver diverso...il problema non so quale.

    Ho pensato ad una soluzione che potrebbe essere quella di costruirmi un database MySQL (già presente il Linux) ed usare Connector/J per collegare l'applicazione Java ed il Database. Che ne dite?

    Se, questa soluzione non vi piace, potreste indicarmi una nuova strada?

    Vi ringrazio anticipatamente,
    aspetto una vostra risposta

    Grazie Infinite

  2. #2
    Moderatore di Programmazione L'avatar di LeleFT
    Registrato dal
    Jun 2003
    Messaggi
    17,320

    Moderazione

    Java ha un forum dedicato... sposto.


    Ciao.
    "Perchè spendere anche solo 5 dollari per un S.O., quando posso averne uno gratis e spendere quei 5 dollari per 5 bottiglie di birra?" [Jon "maddog" Hall]
    Fatti non foste a viver come bruti, ma per seguir virtute e canoscenza

  3. #3
    Moderatore di Programmazione L'avatar di LeleFT
    Registrato dal
    Jun 2003
    Messaggi
    17,320
    Visto che chiedi suggerimenti... prova a cercare informazioni in merito a JavaDB (Apache Derby).
    E' un DBMS completamente scritto in Java, quindi completamente portabile.


    Ciao.
    "Perchè spendere anche solo 5 dollari per un S.O., quando posso averne uno gratis e spendere quei 5 dollari per 5 bottiglie di birra?" [Jon "maddog" Hall]
    Fatti non foste a viver come bruti, ma per seguir virtute e canoscenza

  4. #4
    Utente di HTML.it
    Registrato dal
    Oct 2007
    Messaggi
    73
    Innanzitutto ti ringrazio per la risposta.
    Un JavaDB lo usa già l'applicazione Java come database intermedio per memorizzare alcune informazioni.

    Quello di cui avrei bisogno sarebbe solo di un driver (in Linux) che mi permetta di far interagire un database MySql con quest'applicazione.

    ps. Prova a dare un occhiata al link, appare l'interfaccia dell'applicazione che mi richiede i dati di connessione al database

    http://www.4shared.com/photo/0FhVSBfM/Immagine.html

  5. #5
    Moderatore di Programmazione L'avatar di LeleFT
    Registrato dal
    Jun 2003
    Messaggi
    17,320
    I driver JDBC sono cross-platform (a parte, forse, alcuni driver specifici di Microsoft).

    Quindi, il driver JDBC per MySQL (chiamato Connector/J) è uno solo e funziona con qualunque sistema operativo... lo puoi scaricare tranquillamente dal sito di MySQL a questo indirizzo: http://www.mysql.com/downloads/connector/j/


    Ciao.
    "Perchè spendere anche solo 5 dollari per un S.O., quando posso averne uno gratis e spendere quei 5 dollari per 5 bottiglie di birra?" [Jon "maddog" Hall]
    Fatti non foste a viver come bruti, ma per seguir virtute e canoscenza

  6. #6
    Utente di HTML.it
    Registrato dal
    Oct 2007
    Messaggi
    73
    Ok, grazie.
    Volevo chiederti quali poi sarebbero i parametri da inserire per la connessione, cioè per:

    - URL to database (non devo inserire solo il path al db vero?)
    - Driver
    - Driver location (suppongo dove poi sarà il .jar scaricato vero?)

    Ti ringrazio tanto per la disponibilità
    Ciao

  7. #7
    Moderatore di Programmazione L'avatar di LeleFT
    Registrato dal
    Jun 2003
    Messaggi
    17,320
    Originariamente inviato da Enigma86
    Ok, grazie.
    Volevo chiederti quali poi sarebbero i parametri da inserire per la connessione, cioè per:
    Informazioni che sono state trattate diverse volte su questo forum... C'è anche una mia vecchia pillola che spiega come connettere un'applicazione Java ad un database MySQL.

    - URL to database (non devo inserire solo il path al db vero?)
    Non devi proprio fornire nessun path al DB... si arrangia il server MySQL a gestire fisicamente il DB.

    L'URL è nella forma:

    codice:
    jdbc:mysql://host:porta/nomeDB?user=username&password=password
    Dove, chiaramente, host, porta, nomeDB, username e password saranno i valori effettivi per la connessione.

    - Driver
    La classe del driver (si trova, solitamente, nella documentazione relativa al driver stesso): com.mysql.jdbc.Driver

    - Driver location (suppongo dove poi sarà il .jar scaricato vero?)
    Sì... ma affinchè possa essere effettivamente caricato è necessario che sia raggiungibile lungo il CLASSPATH o che possa essere caricato tramite un apposito ClassLoader...

    Ti ringrazio tanto per la disponibilità
    Ciao
    Figurati.

    Ciao.
    "Perchè spendere anche solo 5 dollari per un S.O., quando posso averne uno gratis e spendere quei 5 dollari per 5 bottiglie di birra?" [Jon "maddog" Hall]
    Fatti non foste a viver come bruti, ma per seguir virtute e canoscenza

  8. #8
    Utente di HTML.it
    Registrato dal
    Oct 2007
    Messaggi
    73
    Gentilissimo davvero, ti ringrazio.
    Solo che forse non mi sono spiegato bene su un punto.
    Hai visto lo screenshot che ho postato prima? In questo modo ti sarà più chiaro capire cosa intendo

    Il mio database MySql è in locale, cioè è un file che devo caricare come se fosse un normale file. Non ho bisogno di inserire /hostorta etc etc ...vado ad inserire la directory dove si trova il db allora?

    E poi, giacchè mi sei molto d'aiuto, mi diresti come aggiungo il .jar al CLASSPATH?

    Ti ringrazio infinitamente
    Ciao

  9. #9
    Moderatore di Programmazione L'avatar di LeleFT
    Registrato dal
    Jun 2003
    Messaggi
    17,320
    Originariamente inviato da Enigma86
    Il mio database MySql è in locale, cioè è un file che devo caricare come se fosse un normale file. Non ho bisogno di inserire /hostorta etc etc ...vado ad inserire la directory dove si trova il db allora?
    Ma stiamo parlando di MySQL? Perchè MySQL non è un DBMS file-based. Quindi, non esiste alcun "file di MySQL" (non è come Access che il database è un file MDB!). MySQL è un DBMS client/server (esiste una versione "embedded", mai usata da me finora, che non so nemmeno se sia possibile usare con Java): c'è un server che è installato nella macchina che gestisce il DBMS il quale accetta connessioni (da locale o da remoto, è configurabile) e le gestisce... i dati delle tabelle dei vari database sono memorizzati all'interno di una struttura di directory che viene gestita solo ed esclusivamente dal server MySQL.


    E poi, giacchè mi sei molto d'aiuto, mi diresti come aggiungo il .jar al CLASSPATH?

    Ti ringrazio infinitamente
    Ciao
    Il CLASSPATH è una variabile d'ambiente che, generalmente, o non esiste o la si lascia vuota. Il class-path dovrebbe essere sempre "costruito" dall'applicazione che deve essere eseguita. Generalmente le applicazioni Java vengono distribuite su file JAR che, al loro interno, contengono un file MANIFEST che specifica quale deve essere il classpath da usare per avviare tale applicazione.

    Ma questi sono concetti che un programmatore Java dovrebbe già conoscere.


    Ciao.
    "Perchè spendere anche solo 5 dollari per un S.O., quando posso averne uno gratis e spendere quei 5 dollari per 5 bottiglie di birra?" [Jon "maddog" Hall]
    Fatti non foste a viver come bruti, ma per seguir virtute e canoscenza

  10. #10
    Utente di HTML.it
    Registrato dal
    Oct 2007
    Messaggi
    73
    Ok, grazie.
    Ora ci sono (più o meno) ;-)

    Allora guarda un po' qui così mi spiego meglio: http://www.4shared.com/photo/0FhVSBfM/Immagine.html

    Allora, come vedi, quest'applicazione è scritta in Java ed in pratica fa un analisi da una serie di dati che bisogna prendere da un database.
    Nello screenshot puoi vedere che ci sono tre campi i quali devono essere riempiti con, rispettivamente, l'URL del db (che è in locale, cioè localhost), il driver JDBC ed il jar del driver.

    Ora, quest'applicazione è stata pensata per lavorare sotto Windows, cioè usando il driver JDBC-ODBC nativo di Microsoft. Il fatto è che io ho bisogno che quest'applicazione funzioni sotto Linux....ma purtroppo non so quale driver JDBC-ODBC usare.
    Per questo avevo pensato di crearmi un db MySql (ora la sorgente dati è in CSV) ed usare il driver Connector/J per far comunicare quest'applicazione (che usa JDBC) con un database MySQL.

    Tu avresti in mente qualcosa di più semplice e meno invasivo o è corretto quello che andrò a fare?

    Ti ringrazio tanto, davvero.

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.