jsp被转成servlet后eclipse把这个servlet放在哪个目录下呢?
马克-to-win:对于学有余力的同学,我最后再延伸讲一点。Eclipse运行jsp的时候,先把它变成一个servlet(发生在第一次访问jsp时)。 eclipse把这个servlet放在哪个目录下呢?我们可以按照下面的步骤找到它:右击项目/Run as/Run Configuration找到你的Tomcat Server/Argument其中找到deploy这个参数,它清清楚楚的标明,你的Servlet项目被部署到哪个目录下了!到那个目录附近,耐心打开每个目录。仔细依照可以找到这个servlet,我的在D:\eclipseJee\.metadata\.plugins\ org.eclipse.wst.server.core\tmp0\work\Catalina
\localhost\ServletHello\org\apache\jsp\jsp1_jsp.java。
马克- to-win:马克 java社区:防盗版实名手机尾号: 73203。
我把它稍微改编一下, 大家就看的更清楚了:
Servlet{
private int accessCount = 0;
double called() {
return Math.random();
}
doGet(HttpServletRequest request, HttpServletResponse response){
response.setContentType("text/html; charset=GBK");
out.write("<html>\r\n");
out.print(++accessCount);
if (called() < 0.5) {
out.write("\r\n");
out.write("天气好\r\n");
} else {
out.write("\r\n");
out.write("天气不好\r\n");
}
out.write("\r\n");
out.write("</body>\r\n");
out.write("</html>");
}
}
当程序变成一个servlet, 对我们来讲就简单极了!
输出的结果在浏览器中:
1 天气不好
每刷新一次, 数字往上增一。
【新手可忽略】
1)jsp编译成的class版本怎么看?用EltraEdit编辑器看。
32代表jdk1.6。
33代表jdk1.7。。。。以此类推。
2)在生产环境中,完全没有eclipse影响,纯tomcat中,如何设置jsp生成的class版本?
\apache-tomcat-7.0.82\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>compilerSourceVM</param-name>
<param-value>1.7</param-value>
</init-param>
<init-param>
<param-name>compilerTargetVM</param-name>
<param-value>1.7</param-value>
</init-param>
<load-on-startup>3</load-on-startup>
</servlet>
缺省值在原始web.xml里面:
<!-- The JSP page compiler and execution servlet, which is the mechanism -->
<!-- used by Tomcat to support JSP pages. This servlet supports the -->
<!-- following initialization parameters (default values are in square brackets): -->
<!-- compilerSourceVM Compiler source VM. [1.6] -->
<!-- -->
<!-- compilerTargetVM Compiler target VM. [1.6] -->
3)在eclipse中,如何设置jsp生成的class版本?
eclipse是把上面说的tomcat/bin/web.xml缓存了一版在eclipse中,所以你改tomcat目录中的web.xml文件没用,必须改这里的,才有用。