当前位置: 代码迷 >> Java Web开发 >> 请问<jsp:include page="" flush="true"/> 不能解释执行的原因
  详细解决方案

请问<jsp:include page="" flush="true"/> 不能解释执行的原因

热度:5463   发布时间:2013-02-25 21:20:59.0
请教<jsp:include page="" flush="true"/> 不能解释执行的原因
这是“从零开始——JSP动态网页制作基础培训教程”的视频教程里的一个例子,但是我按照例子的去做却出怪问题。
例子是这样的。
有一个JavaBean文件SampleBean3.java代码为

package ch6;
import java.io.*;
public class SampleBean3{
public SampleBean3(){
}
  private int num = 0;
public void setNum(int num) {
this.num = num;
}
public int getNum(){ 
num++;
return num;
}
}

~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
sample5.jsp的代码为

<%@ page language="java" contentType="text/html; charset=gb2312"%> 
<jsp:useBean id="splBean" class="ch6.SampleBean3" scope="request"/>
<html>
<head>
<title>request范围的JavaBean</title>
</head>
<body>
<%splBean.getNum();%> 
<center>
<p>
<font size="5">访问人次:<strong>
<jsp:include page="sample4.jsp" flush="true"/>
</strong></font></p></center>
<p>我喜欢CSDN,我喜欢编程。</p>
</body>
</html>

~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
sample4.jsp的代码为

<jsp:getProperty name="splBean" property="num"/>

~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
问题出在sample5.jsp的<jsp:include page="sample4.jsp" flush="true"/>这一句,当在IE执行sample5.jsp时页面内容只显示“访问人次:”,查看->源文件,发现“<font size="5">访问人次:<strong>”之后的代码都没有了。当我把<jsp:include page="sample4.jsp" flush="true"/>换成<%@ include file="sample4.jsp"%>就没问题。这是什么原因造成的呢??我看她视频教程里却能运行成功,我说下我用的是MyEclipse 6.0.1 + Tomcat6.0,视频教材用的是Eclipse3.0 + Tomcat5.0



------解决方案--------------------------------------------------------
lz显然没明白两种include的区别

baidu或google一下

简单的说,前者是先编译代码,再合并,两者独立
后者是先合并代码再编译,很明显sample4.jsp用到sample5.jsp的代码
  相关解决方案