Tomcat中如何将JSP解析为Servlet
2014-07-29 13:46
411 查看
找到tomcat,lib目录先的jsper.jar,其中有一个Service方法:1.该方法将JSP文件变成HttpJspBase的子类。2.子类重写_jspService()方法。为什么会加一个"_",其它的方法有jspInit(),jspDestory().3.一个页面就对应一个Servlet。看到是HTTP代码就是加上out.println(),如果是<%%>就原封不动的放到JAVA代码中,其他若干功能,比如调用组件库等等。其实这个过程比较复杂。
Tomcat的访问分为两种:1.动态访问,.jsp是动态访问。2.静态访问,直接将请求的内容通过HTTP返回。
动态访问例子:
在SERVER下面的web.xml文件中找到下面的内容
<servlet-mapping>
<servlet-name>jsp</servlet-name>
<url-pattern>*.jsp</url-pattern>
</servlet-mapping>
然后找到对应的处理类
<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>
说明后缀为.jsp请求的内容是被上面的具体实现类来处理的,上面类的主要作用就是将.jsp文件转换为Servlet然后由Servlet来提供对用户的反馈。
TIP:修改为Listing为true可以加快调试速度。
修改tomcat的web.xml中listing参数为true可以让访问的时候,列出所有的可显示文件
<servlet>
<servlet-name>default</servlet-name>
<servlet-class>org.apache.catalina.servlets.DefaultServlet</servlet-class>
<init-param>
<param-name>debug</param-name>
<param-value>0</param-value>
</init-param>
<init-param>
<param-name>listings</param-name>
<param-value>true</param-value>
<init-param>
<load-on-startup>1</load-on-startup>
</servlet>
Tomcat的访问分为两种:1.动态访问,.jsp是动态访问。2.静态访问,直接将请求的内容通过HTTP返回。
动态访问例子:
在SERVER下面的web.xml文件中找到下面的内容
<servlet-mapping>
<servlet-name>jsp</servlet-name>
<url-pattern>*.jsp</url-pattern>
</servlet-mapping>
然后找到对应的处理类
<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>
说明后缀为.jsp请求的内容是被上面的具体实现类来处理的,上面类的主要作用就是将.jsp文件转换为Servlet然后由Servlet来提供对用户的反馈。
TIP:修改为Listing为true可以加快调试速度。
修改tomcat的web.xml中listing参数为true可以让访问的时候,列出所有的可显示文件
<servlet>
<servlet-name>default</servlet-name>
<servlet-class>org.apache.catalina.servlets.DefaultServlet</servlet-class>
<init-param>
<param-name>debug</param-name>
<param-value>0</param-value>
</init-param>
<init-param>
<param-name>listings</param-name>
<param-value>true</param-value>
<init-param>
<load-on-startup>1</load-on-startup>
</servlet>
相关文章推荐
- servlet2.4与jsp2.0之前jsp页面中如何解析el(转)
- Java_02_如何查看Servlet、JSP的版本(Tomcat V7.0.37)
- 经常看到jsp的初学者问tomcat下如何配置jsp、servlet和bean的问题
- Tomcat如何解析URL的请求参数(追踪HttpServletRequest对于请求参数的解析过程)
- jsp的初学者问tomcat下如何配置jsp、servlet和bean的问题
- tomcat解析(-)学习如何写一个servlet服务器
- Tomcat是如何将JSP代码编译成Servlet代码的?
- JavaWeb Tomcat 配置文件解析及JSP Servlet简介
- tomcat下如何配置jsp、servlet和bean
- servlet,jsp,tomcat,jdk对应版本关系,如何查看jsp和servlet版本信息
- JSP/Servlet,Tomcat,Jstl各版本对比以及如何查看版本
- servlet,jsp,tomcat,jdk对应版本关系,如何查看jsp和servlet版本信息
- IT忍者神龟之servlet_jsp_tomcat_jdk 版本对应关系及如何查看jsp和servlet版本信息
- servlet2.4与jsp2.0之前jsp页面中如何解析EL
- 经常看到jsp的初学者问tomcat下如何配置jsp、servlet和bean的问题
- Tomcat安装及如何配置jsp、servlet、bean
- 如何查看Servlet、JSP的版本(Tomcat V7.0.70)
- 如何tomcat下配置jsp、servlet.JavaBean.数据库连接池.虚拟目录
- 从0开始学Java——JSP&Servlet——如何在Eclipse中配置Web容器为tomcat
- 初学笔记B:TOMCAT下目录WEBAPPS的初识,和加载SERVLET和JSP的方法