先看一个简单的应用,在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. Thinkphp中验证码不显示解决办法

    1.页面是否存在bom头, 2.入口文件中是否有define(‘APP_DEBUG’, TRUE); //是否开启调试模式,上线时请改为false

  2. 解决安装mysql时出现的三种问题

    MySQL v5.0.96 for windows 安装版         链接:http://pan.baidu.com/s/1slmE2k9 密码:tadp MySQLAdministratort ...

  3. buuctf wireshark

    首先下载文件夹 然后用wireshark进行分析 然后发现啥也不会然后查一下资料https://www.jianshu.com/p/55ec409c739e 然后根据资料找了tcp然后根据解析做出此题 ...

  4. MySQL命令行脚本

    1. 命令行连接 打开终端,运行命令 mysql -uroot -p 回车后输入密码,当前设置的密码为mysql 退出登录 quit 和 exit 或 ctrl+d 查看版本:select versi ...

  5. python连接oracle数据库报错"DatabaseError: DPI-1047: 64-bit Oracle Client library cannot be loaded: "解决方案

    操作系统,python3.5, oracle_11, 均为64位:plsql 正常连接. 也顺利安装了cx_oracle 6.3,但是python进行连接的时候就会报错"DatabaseEr ...

  6. vue去掉地址栏# 方法

    超简单 export default new Router({ //将mode 设置为‘history‘ 即可.默认情况是’hash’ 所以会有丑陋的# mode: 'history', routes ...

  7. 如何处理 Web 图片优化?

    未优化的图片是影响网站性能的主要因素之一,尤其会影响初次加载.取决于图像的分辨率和画质,图片可能占据整个网站流量的 70%. 生产环境出现未优化的图片并显著影响初次加载速度的现象还是挺常见的.缺乏经验 ...

  8. 如何利用wx.login方法获取openid和sessionKey

    1, wx.login(Object object) 调用接口获取登录凭证(code).通过凭证进而换取用户登录态信息,包括用户的唯一标识(openid)及本次登录的会话密钥(session_key) ...

  9. MySQL双机热备环境搭建

    一.    前期准备 准备两台服务器(电脑),接入到同一局域网中,能够使双方可以ping通: 安装MySQL数据库,具体安装方法网上很全面,但是安装的版本需保持一致: 服务器IP地址设置. l  A服 ...

  10. Java面向对象编程 -6.3

    foreach迭代输出 对于数组而言,一般都会使用for循环进行输出,但是在使用传统for循环的时候往往采用下标的形式进行数组元素的访问. 但是在jdk1.5之后为了减轻下标对数组的影响(如果数组下标 ...