先看一个简单的应用,在a.jsp中写如下代码

<html>
 <head></head>
 <body>
  <div>
   <jsp:include page="name.jsp">
    <jsp:param name="name" value="xy" />
   </jsp:include>
  </div>这就将名为name,值为xy的参数传送到name.jsp。 那么在name.jsp中接收参数 &lt;% String n=request.getParameter(&quot;name&quot;); if(n!= null &amp;&amp; !&quot;&quot;.equals(n.trim())) out.println(n); %&gt;
  <div id="showName">
   &lt;%=url&gt;
  </div> 我们来看一个分页的应用 pager.jsp&lt;%@ page language=&quot;java&quot; import=&quot;java.util.*&quot; pageEncoding=&quot;UTF-8&quot;%&gt;&lt;% String path = request.getContextPath(); String basePath = request.getScheme() + &quot;://&quot; + request.getServerName() + &quot;:&quot; + request.getServerPort() + path + &quot;/&quot;;%&gt;&lt;%@tagliburi=&quot;/struts-tags&quot; prefix=&quot;s&quot;%&gt;
  <base href="&lt;%=basePath%&gt;" />   &lt;% String url = request.getParameter(&quot;url&quot;); %&gt;
  <s:if test="#request.yrlyquery==null">
   <s:if test="data.totalPage&gt;1">
    <s:if test="data.totalPage==pageIntNum">
     <a href="&lt;%=url%&gt;?pageNum=1">首页</a>&nbsp;
     <a href="&lt;%=url%&gt;?pageNum=&lt;s:property value=" pageintnum-1"="">&quot;&gt;上一页</a>&nbsp;
    </s:if>
    <s:elseif test="pageIntNum==1">
     <a href="&lt;%=url%&gt;?pageNum=&lt;s:property value=" pageintnum+1"="">&quot;&gt;下一页</a>
     <a href="&lt;%=url%&gt;?pageNum=&lt;s:property value=" data.totalpage"="">&quot;&gt;末页</a>&nbsp;
    </s:elseif>
    <s:else>
     <a href="&lt;%=url%&gt;?pageNum=1">首页</a>&nbsp;
     <a href="&lt;%=url%&gt;?pageNum=&lt;s:property value=" pageintnum-1"="">&quot;&gt;上一页</a>&nbsp;
     <a href="&lt;%=url%&gt;?pageNum=&lt;s:property value=" pageintnum+1"="">&quot;&gt;下一页</a>&nbsp;
     <a href="&lt;%=url%&gt;?pageNum=&lt;s:property value=" data.totalpage"="">&quot;&gt;末页</a>
    </s:else>
   </s:if>
  </s:if>
  <s:else>
   <s:if test="data.totalPage&gt;1">
    <s:if test="data.totalPage==pageIntNum">
     <a href="&lt;%=url%&gt;?queryType=q&amp;pageNum=1">首页</a>&nbsp;
     <a href="&lt;%=url%&gt;?queryType=q&amp;pageNum=&lt;s:property value=" pageintnum-1"="">&quot;&gt;上一页</a>&nbsp;
    </s:if>
    <s:elseif test="pageIntNum==1">
     <a href="&lt;%=url%&gt;?queryType=q&amp;pageNum=&lt;s:property value=" pageintnum+1"="">&quot;&gt;下一页</a>&nbsp;
     <a href="&lt;%=url%&gt;?queryType=q&amp;pageNum=&lt;s:property value=" data.totalpage"="">&quot;&gt;末页</a>
    </s:elseif>
    <s:else>
     <a href="&lt;%=url%&gt;?queryType=q&amp;pageNum=1">首页</a>&nbsp;
     <a href="&lt;%=url%&gt;?queryType=q&amp;pageNum=&lt;s:property value=" pageintnum-1"="">&quot;&gt;上一页</a>&nbsp;
     <a href="&lt;%=url%&gt;?queryType=q&amp;pageNum=&lt;s:property value=" pageintnum+1"="">&quot;&gt;下一页</a>
     <a href="&lt;%=url%&gt;?queryType=q&amp;pageNum=&lt;s:property value=" data.totalpage"="">&quot;&gt;末页</a>
    </s:else>
   </s:if>
  </s:else> 当前第
  <s:property value="pageIntNum" /> 页 共
  <s:property value="data.totalPage" /> 页 其中pageNum还有data.totalpage等,就涉及到ssh分页的知识了,就不在这里赘述了。stduent.jsp......
  <div>
   <jsp:include page="../pager.jsp">
    <jsp:param name="url" value="stu/Stu_toquery" />
   </jsp:include>
  </div>...... 这样就可以完成分页页面的嵌入了。
 </body>
</html>

jsp:include标签参数传递及捕获

在一个jsp页面引入另一个jsp页面的方法主要有一下两种:

方式1、指令标签引入法

<%@include file="/context/mytags.jsp"%>

include file是先拼接后编译 ,因此变量可以直接使用,也可以通过pageContext之类的内置对象进行传递

方式2、使用jsp:include标签引入,并设置参数

<jsp:include page="/webpage/com/sctf/jxtwx/weixin/pageTitle/pageTitle.jsp">

<jsp:param value="发布公告-${classesName }" name="pageTitle"/>

</jsp:include>

通过方式2可以传递参数到被引用的页面,以求动态的变更被引用页面的内容。在被引用的页面可以使用下面的方式获取参数并展示:

<%=request.getParameter("pageTitle")%>

一般主要用于编写通用的jsp页面。

有可能产生乱码,因此引入页面的页面(不是被引入的页面,也就是说不是上文的pageTitle,而是包含上述代码的页面)要设置request.setCharacterEncoding("utf-8");

jsp include参数传送接收与应用的更多相关文章

  1. JSP基本语法--包含指令<%@include file="路径"%> <jsp:include page>

    包含指令,真正改变的地方只有具体内容处: 方法1: 在每个jsp页面(HTML)都包含工具栏,头部信息,尾部信息,具体内容 方法2: 将工具栏,头部信息,尾部信息都分成各个独立的文件,使用的时候直接导 ...

  2. jsp get参数乱码问题

    摘自:username2.iteye.com/blog/1597917个人理解中文传送的时后需要转码: js代码: 要进行两次转码才不会出现乱码(默认为UTF-) encodeURI(encodeUR ...

  3. 项目中遇到的问题——jsp:include

    昨晚记错了,项目中用的是这个<jsp:attribute>,不过没关系,都差不多!原理是传参数 具体用法: 假设有两个tag文件  aaa 和 bbb aaa有两个属性:name  age ...

  4. [转]<jsp:include>和<%@include%>的区别

    首先,转发自yangbobo1992的 <jsp:include>和<%@include%>的区别 这个是我见过写的最好的之一 <%@include%>和<j ...

  5. 常用jsp include用法,三种include的区别

    <@ include file=””> :静态导入,jsp指令,同一个request , <jsp:include page=”” flush=””>:动作元素,不同一个req ...

  6. include指令和<jsp:include>标准动作

    利用JSP的包含机制,可以有效的避免重复,把可重用的部分独立出去,使用include把它们包含到当前文件.JSP有两种包含机制:include指令和<jsp:include>标准动作. 1 ...

  7. @include与jsp:include的区别

    1.可以使用一个JSP指令或者一个标准行为,在JSP页面中引入其他的页面片段. 2. include指令:在翻译阶段(将JSP页面转换成servlet的阶段),JSP的include指令会读入指定的页 ...

  8. 关于 jsp:include 传参的用法

    引用模版页面的代码,如下: <jsp:include page="/WEB-INF/template/nav_template.jsp">     <jsp:pa ...

  9. JSP 最佳实践: 用 jsp:include 控制动态内容

    在新的 JSP 最佳实践系列的前一篇文章中,您了解了如何使用 JSP include 伪指令将诸如页眉.页脚和导航组件之类的静态内容包含到 Web 页面中.和服务器端包含一样,JSP include  ...

随机推荐

  1. no module named系列问题解决

    持续更新中~~~ 1.终端指令错误:no module named 'gdbm' 解决办法: sudo apt-get install python3.6-gdbm 2.终端无法定位软件包 解决办法: ...

  2. k8s 部署 custom-metrics-apiserver 时使用 secret 保存 ca 证书遇到的问题

    部署 k8s-prometheus-adapter 的 custom-metrics-apiserver 时,pod 总是启动失败,对应的错误日志: unable to install resourc ...

  3. Multisim 如何调整编辑界面大小

    1.option -> sheet properties 2.选择workspace

  4. AndroidStudio3.3+OpenCV开发环境搭建

    创建一个Android Studio普通项目 导入module 选择 File → New → Import Module 选择解压好的opencv-android-sdk下的sdk下的java,点O ...

  5. 主席树 hdu 4348

    题意:有一个由n个数组成的序列,有4中操作: 1.C l r d [l,r]这段区间都加上d 2.Q l r 询问[l,r]这段区间的和 3.H l r t 询问之前t时间[l,r]的区间和 4.B ...

  6. python+pygame的导弹追踪鼠标游戏设置和说明

    1.效果图 2.注意事项,代码里有说明 3.完整的代码 #导出模块 import pygame,sys from math import * #设置RESIZABLE前,必须导出下面的模块,否则报错 ...

  7. 随机获取list或set或map中的一个元素

    转自:https://m.2cto.com/kf/201507/412937.html import java.util.HashSet;import java.util.List;import ja ...

  8. python浅析对return的理解

    函数外部的代码要想获取函数的执行结果,就可以在函数里面用return语句,把结果返回. return 代表一个函数的终止,如果return 后面带一个print 或者return  ,则后面的不执行 ...

  9. 刷题10. Regular Expression Matching

    一.题目说明 这个题目是10. Regular Expression Matching,乍一看不是很难. 但我实现提交后,总是报错.不得已查看了答案. 二.我的做法 我的实现,最大的问题在于对.*的处 ...

  10. inconsistent use of tabs and spaces in indentation

    这个报错就是混用了tab和4个空格造成的,检查代码,要不全部用tab,要不全部用4个空格,或者用idle编辑器校正