Spring is far bigger and more generally applicable than Hibernate is. You decision is a trade-off between the length of the learning curve and the utility you'll have when you're done.
I'd recommend Spring, because it can either co-exist with both Struts and Hibernate OR supply alternatives for either one (Spring web MVC and Spring JDBC).
Spring will have a beneficial effect on your Java EE designs. Start with that.