Struts is a web application framework. Spring is a web application framework plus a whole lot of other things including an "AOP" framework, a DAO framework, etc. The Spring documentation might help you get a more thorough picture.
By the way, TheServerSide has just published an excerpt from Matt Raible's "Spring Live", which contains an example of how one goes about building a web application using Struts (for MVC), Spring, and Hibernate.
Originally posted by somkiat puisungnoen: What does "AOP" mean ? ...
Aspect-Oriented Programming. You can get a reasonable idea of what it's all about if you read the documentation for AspectJ, an AOP framework. Another popular AOP implementation is AspectWerkz which is based on Java (i.e. not adding new language constructs like AspectJ is doing). You can see a "hello world" using AspectWerkz in here. [ July 28, 2004: Message edited by: Lasse Koskela ]