JSP assists developers in creating HTML or XML pages that combine static (fixed) page templates with dynamic content. Separating the user interface from content generation allows page designers to change the page layout without having to rewrite program code. JSP was designed to be simpler than pure servlets or CGI scripting.
JSP uses XML-like tags and scripts written in Java to generate the page content. HTML or XML formatting tags are passed back to the client. Application logic can live on the server, e.g. in JavaBeans.
JSP is a cross-platform alternative to Microsoft's Active Server Pages, which only runs in IIS on Windows NT.
Applications written to the JSP specification can be run on compliant web servers, and web servers such as Apache, Netscape Enterprise Server, and Microsoft IIS that have had Java support added. JSP should soon be available on Unix, AS/400, and mainframe platforms.