Stai cercando un Object Relational Mapper. Hibernate è uno dei pionieri in quest'area. JPA è uno standard Java EE nuovo e consolidato in quest'area, formato dal ragazzo dietro Hibernate. Hibernate e EclipseLink offrono implementazioni JPA.
Esistono strumenti IDE per generare automaticamente classi Java basate su modelli di database e viceversa, come ad esempio Hibernate Tools per "good old" Hibernate e Eclipse Dali per JPA.
Se non si desidera utilizzare un ORM e/o non si desidera generare automaticamente gli oggetti del modello, è sufficiente assicurarsi di progettare gli oggetti modello giusti per il modello di database. Cioè utilizzare una proprietà Long
per un campo BIGINT
, una proprietà BigDecimal
per un campo DECIMAL
, eccetera. È possibile trovare una panoramica dei mapping predefiniti in this page.
Nel JDBC "plain vanilla" è necessario utilizzare almeno i metodi PreparedStatement
per comporre la query SQL anziché concatenare come String. Esistono molti metodi setXXX()
per il tipo di dati specifico, ad esempio setLong()
, setBigDecimal()
, ecc. Lo PreparedStatement
non solo facilita l'impostazione di oggetti Java completi come Date
e InputStream
in una query SQL, ma impedisce anche il codice da SQL injectionattacks. È possibile ottenere ulteriori informazioni su nello Sun JDBC tutorial e trovare un tutorial DAO di base di avvio in this article.
Sì, lavorare con le query SQL ** è ** lavorare con le stringhe. Molto maneggevole. Cosa hai sbagliato per te in questo? –