In this chapter, we talked a little bit about what NHibernate is, and why we should use it. We also touched on what HBM mapping files are and what they are used for, as well as the Plain Old CLR Objects (POCOs) that NHibernate actually maps data into. Neither of these would be very helpful to us without some Data Access Object (DAO) classes to tell NHibernate to retrieve or save the data we are working with. Finally we looked at a simple web page that was databound to a collection of NHibernate objects, all without any codebehind or other additional code.
It may seem like creating all these files is a lot of work, and it might be simpler to just go back to handcoding the SQL! I would tend to agree with you, if I didn't know the shortcut to creating all of these files—code generation, or even better, using Fluent NHibernate! If you can't wait, then sneak a peek at Chapter 4, Data Cartography, for more about Fluent NHibernate.
Now that we have skimmed the surface on how NHibernate works and how to make it work for us, let's talk about database layout and design, which is the subject of our next chapter.