先看一个简单的应用,在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. 【转载】Java的JVM原理

    转自:http://blog.csdn.net/witsmakemen/article/details/28600127/ 一.Java虚拟机的生命周期: Java虚拟机的生命周期 一个运行中的Jav ...

  2. 离线安装requests库

    离线安装需要五个 certifi-2019.9.11-py2.py3-none-any.whl chardet-3.0.4-py2.py3-none-any.whl idna-2.8-py2.py3- ...

  3. [MongoDB]MongoDB分页显示

    MongoDB Limit与Skip方法配合进行分页MongoDB Limit() 方法如果你需要在MongoDB中读取指定数量的数据记录,可以使用MongoDB的Limit方法,limit()方法接 ...

  4. 关于Sublime如何配置C++环境的问题

    前言 传说sublime是全球最好的编辑器,可是只是编辑器啊!!!如果要运行,对于我们这些蒟蒻来说,不得不去使用DEV_C++.我们总是幻想能让sublime变成一个轻量级IDE,那该多好啊!!! 那 ...

  5. Kubernetes 升级记录:从 1.16.3 升级至 1.17.0

    参考官方文档 Upgrading kubeadm clusters 在 ubuntu 18.04 上完成了升级,记录一下升级步骤. 一.升级第一个 master 节点 apt-get 安装 kubea ...

  6. 浅谈对Jquery+JSON+WebService的使用小结

    https://www.jb51.net/article/36207.htm  更新时间:2013年04月28日 12:19:55   作者:    我要评论   本篇文章介绍了对Jquery+JSO ...

  7. 1.java-谈谈接口

    1.面向接口给程序带来的便利和灵活性 List li = new ArrayLIst(); 为什么不写成 ArrayList li = new ArrayLIst(); 2.接口就相当于一些类的规范, ...

  8. drf的序列化和反序列化

    序列化器--Serializer 选项参数: max_length 最大长度 min_length 最小长度 allow_blank 是否允许为空 trim_whitespace 是否截断空白字符 m ...

  9. gulp 常用方法 任务 插件

    执行gulp 任务 gulp taskname (default任务不输入名称亦可:gulp) var gulp = require("gulp"); gulp.task(&quo ...

  10. 【原】Harbor安装及使用

    一.Harbor简介 Harbor是一个用于存储和分发Docker镜像的企业级私有Registry服务器. 二.Harbor安装 1.下载Harbor包 官网地址:https://github.com ...