Gavin King ha creato Hibernate per Java nel 2001 come alternativa agli EJB. Il suo progetto è stato successivamente acquisito / sponsorizzato da JBoss, che ora fa parte di Red Hat.
Al momento esisteva un'altra alternativa chiamata TopLink per Java, originariamente di Object People, quindi acquistata da BEA e ora di proprietà di Oracle. Hibernate ha preso in prestito il concetto Toplink di object / relational mapping (ORM) per semplificare la traduzione di oggetti Java in record di database relazionali e viceversa.
In ogni caso, l'idea è che spesso hai bisogno che i tuoi dati entrino in stasi per un periodo di tempo indefinito, cioè finché qualcuno non ne ha ancora bisogno. Questo non è il genere di cose che vuoi lasciare nella memoria volatile: vuoi che sia persistente.
Questo è tutto ciò che significa ibernazione. Quando un orso va in letargo in inverno, i suoi sistemi corporei rallentano fino al punto in cui non consumano quasi nessuna energia - quindi non deve fare cose tipiche dell'orso come la caccia. L'ibernazione si sta trasformando in una sorta di stasi fino a quando non sarà nuovamente necessaria l'attività.
Quindi, quando Gavin stava cercando un nome per il suo progetto, si avvicinò con "Hibernate" come nome abbastanza descrittivo. Hibernate è stato quindi portato su piattaforme diverse da Java, in particolare su .NET. Per evitare confusione con l'originale Hibernate (che è uno strumento Java) lo chiamavano nHibernate, con la "N" per .NET.