Question: I will have multiple webapps. All webapps being java based and using Spring/hibernate etc. If I put all third party jars in each war file ( corresponding to each webapp ); there would be huge memory footprint !

When third party jars ( like spring/hibernate ) are common across all webapps; what is the best way so as to have minimum memory usage ? One option I could think of is to put these third party jars in Tomcat/lib so that they can be shared across multiple webapps..

Is there any other better way ?

Answer: 
It sounds to me like you are confusing memory (RAM) with disk storage.

If you're looking to minimize the use of disk space, then yes, you can put the jar files in a shared location - see the documentation at <http://tomcat.apache.org/tomcat-7.0-doc/appdev/deployment.html#Shared_Library_Files>

This won't do anything for memory usage - each application is going to load the classes that it needs under its own classloader.
Yes, Tomcat's Common class-loader will load these jars in Tomcat's common lib only once because all webapps share the same common class-loader. But some jars won't work due to various issues. So you have to try.