• 手动编译Jsp文件


    手动模拟Tomcat编译jsp文件

    Tomcat编译jsp文件的配置路径是在%tomcat_home%/conf/web.xml中,有这样一段代码

        <servlet>
            <servlet-name>jsp</servlet-name>
            <servlet-class>org.apache.jasper.servlet.JspServlet</servlet-class>
            <init-param>
                <param-name>fork</param-name>   <!--强制编译 -->
                <param-value>false</param-value>
            </init-param>
            <init-param>
                <param-name>xpoweredBy</param-name>
                <param-value>false</param-value>
            </init-param>
            <load-on-startup>3</load-on-startup>
        </servlet>
    
        <servlet-mapping>
            <servlet-name>jsp</servlet-name>
            <url-pattern>*.jsp</url-pattern>
        </servlet-mapping>

    此段代码表示以.jsp结尾的文件都交给org.apache.jasper.servlet.JspServlet这个类执行。

    JspServlet这个类的功能是将.jsp文件编译为.java文件。

    下面就来手动编译jsp文件

    1.导入jar包:jasper.jar;servlet-api.jar;el-api.jar;catalina-ant.jar;jasper-el.jar;jasper-jdt.jar;tomcat-juli.jar;jsp-api.jar;ant.jar 这些jar包在%tomcat_home%/lib/和%tomcat_home%/bin/中。

    2.编译类是在jasper.jar中的org.apache.jasper.JspC这个类。

    执行:java -cp jasper.jar;servlet-api.jar;el-api.jar;catalina-ant.jar;jasper-el.jar;jasper-jdt.jar;tomcat-juli.jar;jsp-api.jar org.apache.jasper.JspC  >  result.txt

    实例:编译webapp目录下的所有.jsp文件。

    java -cp jasper.jar;servlet-api.jar;el-api.jar;catalina-ant.jar;jasper-el.jar;jasper-jdt.jar;tomcat-juli.jar;jsp-api.jar;ant.jar org.apache.jasper.JspC -webapp webapp -uriroot webapp -compile -webxml web.xml -d classes -javaEncoding GBK -p com.miatc
  • 相关阅读:
    hadoop20---代理另一种方式
    hadoop19---动态代理
    hadoop18---socket实现rpc
    JAVA发送HttpClient
    使用Socket&反射&Java流操作进行方法的远程调用(模拟RPC远程调用)
    hadoop17---RPC和Socket的区别
    hadoop16---反射
    hadoop15---activemq
    Struts2标签实现for循环
    struts2的标签中得到JSP脚本的变量值
  • 原文地址:https://www.cnblogs.com/lhp2012/p/5039811.html
Copyright © 2020-2023  润新知