Hibernate, mapping di oggetti Java su database relazionali

HibernateHibernate è una piattaforma open source ad alto rendimento per lo sviluppo di applicazioni Java, che fornisce il servizio di Object-relational mapping (ORM), e si occupa della mappatura tra le classi Java e le relative tabelle di un database SQL, gestendo il salvataggio degli oggetti di tali classi ed il reperimento degli oggetti dal database stesso, automatizzando le query necessarie, e provvedendo alla reistanziazione dell’oggetto mappato su database (o precedentemente “ibernato”, da cui il nome Hibernate).

Per lo sviluppo di applicazioni Java in Excelsa utilizziamo abitualmente Hibernate, per ridurre significativamente i tempi di sviluppo e le righe di codice, e poterci concentrare sugli obiettivi, riuscendo a ridurre quasi del 95% le comuni attività di programmazione relative alla persistenza dei dati, di consultazione di un manuale separato, e dell’elaborazione a mano dei dati utilizzando SQL e JDBC.

Lavorare contemporaneamente con software Object-Oriented e database relazionali, può rivelarsi lento, ripetitivo e noioso. La mancata corrispondenza tra il modo nel gli oggetti relativi ai dati vengono rappresentati, rispetto ai database relazionali, causa costi di sviluppo significativamente più elevati. Hibernate risolve questo problema, offrendo la possibilità di mappare un modello di rappresentazione dei dati dell’oggetto, al modello di dati del database relazionale ed al suo schema corrispondente. Hibernate in pratica si frappone tra le due rappresentazioni dei dati, e consente un uso Object-Oriented più elegante lato Java, garantendo l’integrità dei dati.

Hibernate è concesso in licenza open source sotto la GNU Lesser General Public License (LGPL), con libertà di utilizzo sia in ambito di sviluppo che di produzione, così come permette ai produttori indipendenti di software di integrare e distribuire Hibernate gratuitamente.