JSP中的include指令

简介:

3.4include指令

        一般的网页格式如下:
1
不变
2 首部信息(基本不变)
各个频道的具体信息
(此处的信息是会被反复改变的)
3 尾部信息(基本不变)
        那么如果要想实现以上的样式的代码,有两种做法:
        ·   每一个页面都单独编写 1 2 3 号代码,这样一来代码重复
        ·   将这三部分代码单独做成文件,之后在一个整体页面中包含进来

3.4.1<%@include file=""%>

        可以包含任何的文件,可以把任何文件的内容直接包含进来,文件包含的时候不需要后缀。所以此种包含属于静态包含,只关心文件本身的内容。
例如:现在随便建立几个后缀的文件:
1   inc.jsp
<h1>inc.jsp</h1>
2   inc.htm
<h1>inc.htm</h1>
3   inc.inc
<h1>inc.inc</h1>
        那么之后直接使用包含语句将此三个页面包含进来
IncludeDemo01.jsp
<%@include file="inc.htm"%>
<%@include file="inc.jsp"%>
<%@include file="inc.inc"%>
<h1>IncludeDemo01.jsp</h1>

3.4.2<jsp:include page=""/>

        动态包含,动态包含比静态包含多增加了一个判断功能,如果被包含的是动态页面,则按动态的方式进行处理,如果包含的是静态页面,则与之前的 <%@include%> 的操作形式是一样的。
IncludeDemo02.jsp
<jsp:include page="inc.htm"/>
<jsp:include page="inc.jsp"/>
<jsp:include page="inc.inc"/>
<h1>IncludeDemo02.jsp</h1>
        那么,使用此种包含语句,可以向被包含的页面之中传递参数,只要被包含的页面是动态页面,则就可以通过 request.getParameter() 直接接收此参数。
Incdemo.jsp
<%--  这两个参数都由包含页传递过来  --%>
<h1><%=request.getParameter("ref1")%></h1>
<h1><%=request.getParameter("ref2")%></h1>
IncludeDemo03.jsp
<jsp:include page="Incdemo.jsp">
         <jsp:param name="ref1" value="Hello"/>
         <jsp:param name="ref2" value="World"/>
</jsp:include>
<h1>IncludeDemo02.jsp</h1>

3.4.3、两种包含的区别

        两种包含完成的功能都很相似,只是第二种包含中可以传递参数,第一种不能传递参数,除此之外两种包含还有一个最大的差别:
        ·  <%@include%> :表示把所有的页面的内容包含进来之后一起处理结果
        ·  <jsp:include/> :如果包含的是静态页面,则处理过程与之前一样,如果是动态页面,则多个页面分别进行处理,之后再把结果包含进来。
1    验证 <%@include%> ,静态包含
IncludeDemo04.jsp
<%
         int i = 10 ;
%>
<h1>IncludeDemo04.jsp --> <%=i%></h1>
<%@include file="IncludeDemo05.jsp"%>
IncludeDemo05.jsp
<%
         int i = 100 ;
%>
<h1>IncludeDemo05.jsp --> <%=i%></h1>
2    验证 <jsp:include> ,动态包含
IncludeDemo04.jsp
<jsp:include page="IncludeDemo05.jsp"/>
<%
         int i = 10 ;
%>
<h1>IncludeDemo04.jsp --> <%=i%></h1>
结论:
        两种包含中使用 <jsp:include> 包含是最方便的,建议只使用此语法。

3.5forward指令

       forward 指令的语法与 <jsp:include> 语法类似,只是完成的是无条件跳转功能。
ForwardDemo01.jsp
<jsp:forward page="ForwardDemo02.jsp"/>
ForwardDemo02.jsp
<h1>Hello World!!!</h1>
        以上程序跳转之后,地址栏并没有任何的改变,但是显示的内容改变了,所以称此种跳转为服务器端跳转指令。
        使用 forward 指令也可以像 include 指令那样,直接向跳转的页面传递参数。参数同样是通过 <jsp:param> 进行设置的,接收参数的时候同样使用 request.getParameter() 接收。
ForwardDemo03.jsp
<%
         String str = "WORLD" ;
%>
<jsp:forward page="ForwardDemo04.jsp">
         <jsp:param name="ref1" value="HELLO"/>
         <jsp:param name="ref2" value="<%=str%>"/>
</jsp:forward>
ForwardDemo04.jsp
<h1><%=request.getParameter("ref1")%></h1>
<h1><%=request.getParameter("ref2")%></h1>









本文转自 李兴华 51CTO博客,原文链接:http://blog.51cto.com/lixinghua/101381,如需转载请自行联系原作者
目录
相关文章
|
2月前
|
XML 缓存 Java
JSP 教程 之 JSP 指令 1
JSP指令用于设置页面属性,如编码和脚本语言。包括3种类型:`@page`定义页面属性,`@include`包含其他文件,`@taglib`引入标签库。`&lt;%@ page ... %&gt;`用于指定脚本语言、错误处理页面等,可有多个属性。XML格式为`&lt;jsp:directive.page attribute=&quot;value&quot; /&gt;`。
25 1
|
2月前
|
XML 前端开发 Oracle
16:JSP简介、注释与Scriptlet、Page指令元素、Include操作、内置对象、四种属性-Java Web
16:JSP简介、注释与Scriptlet、Page指令元素、Include操作、内置对象、四种属性-Java Web
23 2
|
2月前
|
XML Java API
JSP 教程 之 JSP 指令 4
**JSP指令设置页面属性,如编码和语言。语法:&lt;%@ directive attribute=&quot;value&quot; %&gt;。Taglib指令用于引入自定义标签库,格式:&lt;%@ taglib uri=&quot;uri&quot; prefix=&quot;prefix&quot; %&gt;,XML语法: `&lt;jsp:directive.taglib uri=&quot;uri&quot; prefix=&quot;prefix&quot; /&gt;`,uri定义库位置,prefix定义标签前缀。**
9 0
|
2月前
|
XML Java 编译器
JSP 教程 之 JSP 指令 3
JSP指令用于设置页面属性,如编码和脚本语言。`&lt;%@ directive attribute=&quot;value&quot; %&gt;`是其语法。`include`指令用于包含其他文件,如JSP、HTML,语法为`&lt;%@ include file=&quot;相对URL&quot; %&gt;`,XML形式为`&lt;jsp:directive.include file=&quot;相对URL&quot; /&gt;`。包含文件被视为JSP的一部分共同编译执行。默认在当前路径找文件。
24 0
|
2月前
|
缓存 安全 Java
JSP 教程 之 JSP 指令 2
JSP教程介绍了JSP指令用于设置页面属性,如编码和脚本语言。指令包括:`&lt;%@ page %&gt;`定义页面属性,`&lt;%@ include %&gt;`包含文件,`&lt;%@ taglib %&gt;`引入标签库。`&lt;%@ page&gt;`指令有多个属性,如`contentType`设定MIME类型和字符编码,`errorPage`指定异常处理页面,`language`默认为Java等。这些指令影响JSP行为和交互。
39 0
|
2月前
|
Java 编译器
Jsp页面中两种include的使用
Jsp页面中两种include的使用
30 2
|
8月前
|
Java
JSP中的include的两种用法
JSP中的include的两种用法
|
8月前
|
XML Java 数据格式
使用jsp:include嵌入页面的两种方式
使用jsp:include嵌入页面的两种方式
|
9月前
|
Java
16JavaWeb基础 - JSP的三大指令
16JavaWeb基础 - JSP的三大指令
65 0
|
11月前
|
Java
jsp的指令与注释
jsp的指令与注释
46 0