Spring as a whole have many modules for IOC, AOP, Web MVC etc. It is very loosely coupled in such a way you can pick any of them and use in your application. You can check the complete modules at
www.springframework.org Spring MVC is industry's famous Model-View-Controller implementation for developing web based application.
Since Spring is a light weight framework, you dont require any app server. A simple web server (that has servelt engine) is enough.
Yes, you can use tomcat to deploy.