I know tomcat is used to run jsps and servlets. What does apache do?
Apache is a general-purpose http server, which supports a number of advanced options that Tomcat doesn't. Although Tomcat can be used as a general purpose http server, you can also set up Apache and Tomcat to work together with Apache serving static content and forwarding the requests for dynamic content to Tomcat. This is generally prefered when using tomcat because the overhead from serving static content directly from Apache is much lower than having Tomcat handle all of the requests.
by static content, do you mean html pages? or something else?
so if your not using html pages and only using servlets and jsps you dont need apache?
I believe yes. If you dont have much of static content then I think its fine to go for Tomcat without Apache.