Applicazione Java con database

di il
6 risposte

Applicazione Java con database

Ciao a tutti, come va?

Dunque, i miei interrogativi sono questi. Partendo dal presupposto che so usare molto bene il linguaggio Java e il database MySql, non mi sono mai cimentato, seriamente, nel realizzare applicazioni Java con database.
Riflettendo però mi sono venuti in mente dei dubbi:

[1] Se dovessi realizzare qualcosa di personale, una applicazione desktop (non una web application) (ad esempio la classica biblioteca o videoteca (immagino database con poche tabelle(forse basta anche 1) e semplici query), o qualcosa di più complesso come un gestionale del bilancio di famiglia (qui immagino un database più complesso, con relazioni fra tabelle e query medio-complesse)) utilizzare MySql come database può andare bene? Poi immagino che il database verrà esportato quando creo il JAR dell'applicazione (o anche no, se rimane nel mio PC?) in modo che posso utilizzare l'applicazione anche in altri PC.

[2] Se invece di qualcosa di personale dovessi realizzare qualcosa per un cliente (un negozio, una piccola azienda ecc) dove però non c'è bisogno di avere un database condiviso, quindi siamo nella situazione del punto [1] ma l'applicazione è realizzata per un cliente. (ad esempio voglio realizzare una applicazione gestionale per un rivenditore di auto usate. Il personale è unico (sto pensando, ovviamente, ad un piccolo rivenditore) e quindi sarà anche l'unico che userà il programma, quindi immagino che la soluzione migliore sia esportare il jar e database in modo da farlo girare sul pc del cliente).

[3] Se invece ci fosse bisogno di un database condiviso? Quindi un'azienda con un po' di personale e tutti usano la mia applicazione e accedono ad un unico database. Come rendo il database condiviso? Va installato su un server personale del cliente, o devo prendere un server ad esempio da aruba? MySql può andare bene? Ho letto che non permette l'accesso dall'esterno...

Scusate se sono stato confusionario, sono disponibile, ovviamente, a chiarimenti.
Grazie mille a tutti per le risposte

6 Risposte

  • Re: Applicazione Java con database

    Dubbi ragionevoli, ma i dubbi si fugano studiando.

    1) trovati un libro sulla teoria relazionale dei dati.
    Una volta che hai capito come funziona, che sia una tabella o un milione, non e' un problema perche' i concetti sono sempre gli stessi.

    2) la mancanza di studio fa anche si che uno non capisca che web-application non ha nulla a che fare con i database. Un database puo' essere utilizzato da qualunque tipo di applicazione: web, desktop, da console, da servizio, da locale, da remoto, via internet, ... L'unica cosa e' assicurarsi che sia possibile aprire una connessione TCP/IP tra l'applicazione stessa e il db.

    Perche il database, piu' precisamente il DBMS (Database Management System) non e' una cosa miracolosa, ma un banale programma che deve essere attivato (mandato in esecuzione da console o installato come servizione quindi fatto partire) e che fa da server, stile un Web server, su una certa porta, mediante un protocollo di rete custom.

    Quindi la tua applicazione deve solo aprire una connessione TCP/IP con il DBMS, e inserire/rimuovere record dalle tabelle, oppure interrogare le tabelle che formano il database.

    Per i punti 2) e 3), non c'e' nulal da dire. hai capito gia' tutto. Non esiste LA SOLUZIONE. Ogni soluzione va adattata al contesto in questione.
    Per esempio, per Aruba, non mi risulta tu possa accedere direttamente al database da Internet. Devi installare la tua applicazione su un serve Aruba, e solo questo server vede il dbms, che stara' su qualche altro server visibile solo dalla rete interna. Problemi di sicurezza.

    Per tutte queste soluzioni, MySQL va benissimo, cosi' come va bene qualunque DBMS a cui ci si deve connettere via TCP/IP: SQLServer, Oracle, DB2 (tutti scaricabili gratuitamente), ed N-mila altri DBMS.
  • Re: Applicazione Java con database

    Grazie migliorabile per la risposta.
    Rileggendo bene forse la domanda [1] è inutile. Comunque io già ho studiato libri di Basi di Dati e so come funziona il mondo delle relazioni fra tabelle etc.
    I miei dubbi era su come integrare il database ad una applicazione. Applicazione che può essere personale (quindi database su stessa macchina dove gira l'applicazione) o non personale (magari ci sono più macchine con la stessa applicazione che si connette ad un database che gira su un'altra macchina).
    E infine, se io volessi far girare la mia applicazione su tutti i computer che ho in casa, e far comunicare questa applicazione col database, come posso fare? Non posso installare l'applicazione su ogni macchina ognuna col proprio database, non avrei stessi dati, ma non posso neanche mettere un server in casa...sarebbe troppo dispendioso..
  • Re: Applicazione Java con database

    Certo che lo puoi fare, non ti serve mica un super computer.
    A meno che al DBMS non si colleghino migliaia di utenti, il DBMS lo puoi installare su qualunque PC. anche un portatile, un notebook, un raspberry pc!!!

    Comunque, ti consiglio di provare. Ti accorgerai che il 99.9% dei tuoi dubbi sono solo elucubrazioni mentali assolutamente inutili.
  • Re: Applicazione Java con database

    Si, ma per il discorso dell'ip fisso?
  • Re: Applicazione Java con database

    giuvineo ha scritto:


    Si, ma per il discorso dell'ip fisso?
    Prova!
    Per tutto c'e' una soluzione!
    E poi, un po' di iniziativa, perbacco! Non devi mica riscrivere la teoria della relativita'!
  • Re: Applicazione Java con database

    Pensandoci bene, l'ip fisso che mi serve è quello della mia rete interna, quindi non ci sono problemi
Devi accedere o registrarti per scrivere nel forum
6 risposte