Hello "sajedsoft sajedsoft"-
Welcome to JavaRanch.
On your way in you may have missed that we have a
policy on screen names here at JavaRanch. Basically, it must consist of a first name, a space, and a last name, and not be obviously fictitious. Since yours does not conform with it, please take a moment to change it, which you can do
right here.
As to your question, there is no difference between a web server and an HTTP server - they're the same thing. Tomcat is -in addition to being a web server- also a
servlet container, capable of running
Java web applications.
The difference between a web server and an application server is less clear. It is explored at
http://faq.javaranch.com/java/WebVsApplicationServer