`

Web开发3:Tomcat根据JSP生成Servlet机制深度剖析及核心源代码详解

阅读更多

1:什么是JSP(Java Server Pages):

在传统的HTML页面中加入JAVA程序片段和JSP标签,就构成JSP网页。

JAVA程序片段可以操纵数据库,重定向网页以及发送Email等,实现建立动态网页所需要的功能。

所有程序操作都在服务器端执行,网络上传送给客户端的仅是得到的服务器的结果,这样大大降低了对客户浏览器的要求,

即使客户浏览器不支持JAVA,也可以访问JSP页面。

 

JSP的文件结构及主要标签:

 

 

 

在Tomcat的work\Catalina\localhost\目录下,存在许多由JSP文件生成的JAVA及CLASS文件。如下图。

 

以下是login.jsp文件生成的JAVA代码文件

package org.apache.jsp;

import javax.servlet.*;
import javax.servlet.http.*;
import javax.servlet.jsp.*;
import java.util.*;

public final class login_jsp extends org.apache.jasper.runtime.HttpJspBase
    implements org.apache.jasper.runtime.JspSourceDependent {

  private static final JspFactory _jspxFactory = JspFactory.getDefaultFactory();

  private static java.util.List _jspx_dependants;

  private javax.el.ExpressionFactory _el_expressionfactory;
  private org.apache.AnnotationProcessor _jsp_annotationprocessor;

  public Object getDependants() {
    return _jspx_dependants;
  }

  public void _jspInit() {
    _el_expressionfactory = _jspxFactory.getJspApplicationContext(getServletConfig().getServletContext()).getExpressionFactory();
    _jsp_annotationprocessor = (org.apache.AnnotationProcessor) getServletConfig().getServletContext().getAttribute(org.apache.AnnotationProcessor.class.getName());
  }

  public void _jspDestroy() {
  }

  public void _jspService(HttpServletRequest request, HttpServletResponse response)
        throws java.io.IOException, ServletException {

    PageContext pageContext = null;
    HttpSession session = null;
    ServletContext application = null;
    ServletConfig config = null;
    JspWriter out = null;
    Object page = this;
    JspWriter _jspx_out = null;
    PageContext _jspx_page_context = null;


    try {
      response.setContentType("text/html;charset=utf-8");
      pageContext = _jspxFactory.getPageContext(this, request, response,
      			null, true, 8192, true);
      _jspx_page_context = pageContext;
      application = pageContext.getServletContext();
      config = pageContext.getServletConfig();
      session = pageContext.getSession();
      out = pageContext.getOut();
      _jspx_out = out;

      out.write("\r\n");
      out.write("<html>\r\n");
      out.write("  <body>\r\n");
      out.write("    <form action=\"/servletTest/login\" method=\"get\">\r\n");
      out.write("    \tusername:<input type=\"text\" name=\"username\"></input><br>\r\n");
      out.write("    \tpassword:<input type=\"password\" name=\"password\"></input><br>\r\n");
      out.write("    \t<input type=\"submit\" value=\"提交\"></input>&nbsp;&nbsp;&nbsp;\r\n");
      out.write("    \t<input type=\"reset\" name=\"重置\"></input>\r\n");
      out.write("    </form>\r\n");
      out.write("  </body>\r\n");
      out.write("</html>\r\n");
      out.write("\r\n");
    } catch (Throwable t) {
      if (!(t instanceof SkipPageException)){
        out = _jspx_out;
        if (out != null && out.getBufferSize() != 0)
          try { out.clearBuffer(); } catch (java.io.IOException e) {}
        if (_jspx_page_context != null) _jspx_page_context.handlePageException(t);
      }
    } finally {
      _jspxFactory.releasePageContext(_jspx_page_context);
    }
  }
}

 

分享到:
评论

相关推荐

    JAVA WEB 开发详解:XML+XSLT+SERVLET+JSP 深入剖析与实例应用.part4

    本书共分4部分,从xml、servlet、jsp和应用的角度向读者展示了java web开发中各种技术的应用,循序渐进地引导读者快速掌握java web开发。.  本书内容全面,涵盖了从事java web开发所应掌握的所有知识。在知识的讲解...

    JAVA WEB 开发详解:XML+XSLT+SERVLET+JSP 深入剖析与实例应用.part3

    本书共分4部分,从xml、servlet、jsp和应用的角度向读者展示了java web开发中各种技术的应用,循序渐进地引导读者快速掌握java web开发。.  本书内容全面,涵盖了从事java web开发所应掌握的所有知识。在知识的讲解...

    JAVA WEB 开发详解:XML+XSLT+SERVLET+JSP 深入剖析与实例应用.part2

    本书共分4部分,从xml、servlet、jsp和应用的角度向读者展示了java web开发中各种技术的应用,循序渐进地引导读者快速掌握java web开发。.  本书内容全面,涵盖了从事java web开发所应掌握的所有知识。在知识的讲解...

    Servlet JSP深入详解 基于Tomcat的Web开发

    ### Servlet与JSP深入详解:基于Tomcat的Web开发 #### 一、Servlet技术概述 Servlet是一种用Java编写的服务器端应用程序接口(API),它扩展了Java Web开发的功能。Servlet可以响应HTTP请求,并且能够处理复杂的...

    JAVA WEB 开发详解:XML+XSLT+SERVLET+JSP 深入剖析与实例应用.part5

    本书共分4部分,从xml、servlet、jsp和应用的角度向读者展示了java web开发中各种技术的应用,循序渐进地引导读者快速掌握java web开发。.  本书内容全面,涵盖了从事java web开发所应掌握的所有知识。在知识的讲解...

    Tomcat与Java.Web开发技术详解源代码

    本主题“Tomcat与Java.Web开发技术详解源代码”将深入探讨Tomcat的工作原理、配置方法以及如何结合Java进行Web应用开发。 一、Tomcat简介 Tomcat是Apache软件基金会的Jakarta项目的一部分,它实现了Java Servlet和...

    Tomcat与Java Web开发技术详解源代码.rar

    源代码压缩包"Tomcat与Java Web开发技术详解源代码.rar"包含了书中所有示例的完整实现,为读者提供了动手实践的宝贵资源。 首先,Tomcat是Apache软件基金会下的一个开源项目,是一款轻量级的应用服务器,主要支持...

    Tomcat与Java.Web开发技术详解+源代码

    《Tomcat与Java.Web开发技术详解》是一本深入解析Tomcat服务器和Java Web开发的教程,结合源代码和丰富的学习资源,旨在帮助开发者全面理解并掌握相关技术。书中的标签"Tomcat与Web"明确了主要讨论的内容是围绕...

    Tomcat与JavaWeb开发技术详解源代码

    【标签】:“Tomcat与JavaWeb开发技术详解”表明这是关于Tomcat服务器和基于Java的Web应用开发的技术指南,而“源代码”意味着包含了实现这些技术的实践代码。 【压缩包子文件的文件名称列表】:尽管具体的文件名...

    Tomcat与JavaWeb开发技术详解-随书源码

    《Tomcat与JavaWeb开发技术详解》一书的随书源码包含了大量的示例和练习,旨在帮助读者深入理解如何在实际开发环境中运用Tomcat服务器和JavaWeb技术。以下是对这些关键技术点的详细阐述: **Tomcat服务器** Tomcat...

    Tomcat与Java Web开发技术详解源代码

    《Tomcat与Java Web开发技术详解》是一本深入解析Tomcat服务器及Java Web开发的经典著作,作者孙卫琴以其丰富的经验和深入的理解,为读者呈现了Java Web应用在Tomcat上的实现过程。书中涵盖了大量的实践案例和详尽的...

    JSP应用开发详解第三版源代码

    **JSP应用开发详解第三版源代码** JSP(JavaServer Pages)是Java平台上的一个核心技术,用于构建动态web应用程序。《JSP应用开发详解第三版》是一本深入讲解JSP技术的专业书籍,其源代码提供了丰富的实例和实践...

    Tomcat与Java Web开发技术详解 第二版配套光盘源码

    通过源代码,读者可以学习到Servlet生命周期、请求处理、响应生成等核心概念,并理解如何在实际项目中编写和调用Servlet。 4. **JSP(JavaServer Pages)**:JSP是用于创建动态网页的Java技术,它将HTML代码与Java...

    孙卫琴 Tomcat与Java&Web开发技术详解.pdf

    根据提供的文件信息,“孙卫琴 Tomcat与Java&Web开发技术详解.pdf”,我们可以总结出以下相关的IT知识点: ### 一、Tomcat服务器介绍 #### 1.1 Tomcat概述 Tomcat是由Apache软件基金会(ASF)开发的一款开源的...

    Tomcat与Java Web开发技术详解(第二版)源代码sourcecode

    总之,《Tomcat与Java Web开发技术详解(第二版)》的源代码提供了丰富的学习资源,不仅涵盖了Java Web开发的基本概念和技术,还提供了实际项目的实践经验,对于提升开发者技能具有重要意义。通过深入学习和实践这些...

    tomcat与java.web开发技术详解源代码.part01.rar

    《Tomcat与Java.Web开发技术详解》是一本深入解析Tomcat服务器和Java Web开发的书籍。随书提供的源代码部分,通常包含示例程序、项目结构以及书中讲解的关键技术实现,旨在帮助读者更好地理解和实践书中的理论知识。...

    Tomcat与Java.Web开发技术详解

    【标题】"Tomcat与Java.Web开发技术详解"主要涵盖了两个核心主题:Tomcat服务器和Java Web应用程序的开发。Tomcat是Apache软件基金会的Jakarta项目下的一个开源Servlet容器,它实现了Java Servlet和JavaServer Pages...

    Tomcat与Java Web开发技术详解

    《Tomcat与Java Web开发技术详解》是一本深入探讨如何使用Tomcat服务器和Java语言进行Web应用程序开发的专业指南。本书主要面向的是Java开发者,特别是那些希望掌握Java Web应用部署和管理技术的人群。 Tomcat是...

Global site tag (gtag.js) - Google Analytics