Whenever I want to learn a new framework/language, I usually whip up a small project that uses it. For a web framework, I have a common webapp that I write using it. It's simple and doesn't do much, but it has enough features that I need to take advantage of the more common parts of the framework (database, background jobs, mvc or whatever similar such). In fact, not long ago I took up the task of learning Spring/MVC+Hibernate. I don't know it all, certainly, but it gave me enough of a background that, when I don't know something, I know what questions to ask and how to ask them to get more information.
For web frameworks, I usually start with the simple "hello world" example provided for most frameworks. If it has a "guestbook" example (ie, to show database use), I follow up with that. From there, I just start adding the functionality I want in my learning application, beginning with the simplest. The idea being that I can figure out how to ask the right questions for the simple things. After I've done some simple things, I can then look at the more complex things and, with the information I've already learned, I can hopefully formulate the right questions to ask for them.
I recently started putting the code for such learning projects on sourceforge, if you're interested.
Edit: Donal's comment made we want to add... I didn't put the link in as an example for you to learn from. Rather, just as an example of me putting my code out there. If you want to really learn, you need to write the code yourself, not just read someone else's (in my opinion, at least)