I'm looking at possible architectures for a new project I'm working on. As I'm new to Spring, I'd like to ask some questions about what Spring can offer a new project. Apologies if I'm completely missing the point!
1) Why use Spring to access a framework like Hibernate? Surely this is just adding complexity to an application? Surely one of the compelling reasons of using Hibernate is to take away some of the pain in using a home-grown JDBC solution. Why not use Spring's own JDBC abstraction layer. Confused!
2) I've lots of Struts/JSP experience. Why would one replace Struts with the Spring Web framework? Why would one integrate Struts with Spring (which I understand is possible) when just using Struts is simpler?
3) If you were designing a completely new web application, which elements of Spring would you definitely use? Which would you leave behind? In short, describe an optimum application design which uses the Spring framework.
Thanks in advance for your replies.