zoukankan      html  css  js  c++  java
  • Servlet随笔

    HttpServlet中的getRequestURL、getRequestURI、getContextPath方法获取的字符串为

    jsp文件会被编译成一个Servlet,该Servlet继承自HttpJspBase,该Servlet中的_jspService方法的部分代码如下

    login.jsp被编译成login_jsp类

     HttpJspPage接口中的方法如下

    抽象类HttpJspBase实现了HttpJspPage接口

    package org.apache.jasper.runtime;
    
    import java.io.IOException;
    
    import javax.servlet.ServletConfig;
    import javax.servlet.ServletException;
    import javax.servlet.http.HttpServlet;
    import javax.servlet.http.HttpServletRequest;
    import javax.servlet.http.HttpServletResponse;
    import javax.servlet.jsp.HttpJspPage;
    
    import org.apache.jasper.compiler.Localizer;
    
    public abstract class HttpJspBase extends HttpServlet implements HttpJspPage {
        
        private static final long serialVersionUID = 1L;
    
        protected HttpJspBase() {
        }
    
        @Override
        public final void init(ServletConfig config) 
            throws ServletException 
        {
            super.init(config);
            jspInit();
            _jspInit();
        }
        
        @Override
        public String getServletInfo() {
            return Localizer.getMessage("jsp.engine.info");
        }
    
        @Override
        public final void destroy() {
            jspDestroy();
            _jspDestroy();
        }
        @Override
        public final void service(HttpServletRequest request, HttpServletResponse response) 
            throws ServletException, IOException 
        {
            _jspService(request, response);
        }
        
        @Override
        public void jspInit() {
        }
    
        public void _jspInit() {
        }
    
        @Override
        public void jspDestroy() {
        }
    
        protected void _jspDestroy() {
        }
    
        @Override
        public abstract void _jspService(HttpServletRequest request, 
                                         HttpServletResponse response) 
            throws ServletException, IOException;
    }
    

      

  • 相关阅读:
    spring整合curator实现分布式锁
    curator操作zookeeper
    zk创建集群
    zookeeper下的基本操作
    java语音转文字
    netty的数据通信之心跳检测
    arm B和BL指令浅析
    NAND FLASH驱动程序
    外设位宽为8、16、32时,CPU与外设之间地址线的连接方法
    内存接口原理图笔记
  • 原文地址:https://www.cnblogs.com/xiu68/p/8675022.html
Copyright © 2011-2022 走看看