1 / 92

NHibernate - PowerPoint PPT Presentation

  • Uploaded on

NHibernate. Object/Relational Persistence for .NET. A little bit of background information…. .NET port of the Hibernate project (Java). Mature architecture and proven c oncepts, already in use in many enterprise Java applications. Already quite popular in the .NET world as well.

I am the owner, or an agent authorized to act on behalf of the owner, of the copyrighted work described.
Download Presentation

PowerPoint Slideshow about ' NHibernate' - mary

An Image/Link below is provided (as is) to download presentation

Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author.While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server.

- - - - - - - - - - - - - - - - - - - - - - - - - - E N D - - - - - - - - - - - - - - - - - - - - - - - - - -
Presentation Transcript


Object/Relational Persistence for .NET

Mature architecture and proven

concepts, already in use in many

enterprise Java applications

Should work on most databases

Full OO support: inheritance, polymorphism, composition, single-valued and many-valued associations

Maximize performance and flexibility single-valued and many-valued associations

Keep your code clean single-valued and many-valued associations

Strong Points single-valued and many-valued associations

Database independence layers, …)

Rich feature set layers, …)

Mature layers, …)

Weak Points layers, …)

Bad reputation in some companies due to layers, …)

lazy coding ( = abuse of lazy loading )

Plenty of layers, …)outdated articles, blog posts and documentation available

It’s Open Source! layers, …)

(some companies just don’t like that)

Managing associations between classes layers, …)in a transparent manner

Needs to be configured for each association layers, …)

=> fine-grained control over cascade settings

Storing data in the database in an easy manner is great and all, but what about getting it out again?

Querying with all, but what about getting it out again?NHibernate

Hibernate Query Language all, but what about getting it out again?

It’s an Object Oriented query all, but what about getting it out again?language

Criteria API all, but what about getting it out again?

Makes it easier to compose queries dynamically from code. all, but what about getting it out again?

LINQ… still not fully supported all, but what about getting it out again?

Future Queries in only one database roundtrip?

As of as well?NHibernate 2.1, we can do this with some new HQL statements

Second Level Cache data is as well?available to


We’ll update the database doesn’t change frequentlyand the cache

NHibernate doesn’t change frequently will never cache anything in the Second Level Cache automatically

It doesn’t change frequentlyneeds to be configured on a per-entity and per-query basis

A doesn’t change frequentlyll the caching power you want, without having to pollute your code

That’s up to you… multiple providers are available: ASP.NET cache, MemCached, Velocity, Prevalence, …

At this point, I’m ASP.NET cache, almost running out of time and there is a lot more interesting stuff that we won’t get to cover.

Or pessimistic ASP.NET cache, locking strategies…

Or custom user types… ASP.NET cache,

Questions? http://davybrion.com