jsp include参数传送接收与应用

先看一个简单的应用,在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");

原文地址:https://www.cnblogs.com/kaschie/p/11903531.html

时间: 2024-10-10 02:22:31

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

jsp get参数乱码问题

摘自:username2.iteye.com/blog/1597917个人理解中文传送的时后需要转码: js代码: 要进行两次转码才不会出现乱码(默认为UTF-8) encodeURI(encodeURI(http://localhost/qq/index.jsp?title=专业)); java接收参数代码: String title = request.getParameter("title"); title = URLDecoder.decode(title, "UTF

jsp:include

整理自网上: 在jsp中include有两种形式: 1. <%@ include file=” ”%> 2. <jsp:include page=” ” flush=”true”/> 前者是指令元素.后者是行为元素. 主要有两个方面区别: 1.执行时间上: <%@ include file=”relativeURI”%> 是在翻译阶段执行 <jsp:include page=”relativeURI” flush=”true” /> 在请求处理阶段执行. 2

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

今天工作过程中遇到了一个问题:有两个工程,就叫做 " I " 和 " M " 吧.项目 I 写了JSP的结构,样式,数据取得:项目 M 包含页面的跳转 页面的header部分由M加载出来, 表信息通过<jsp:include>引出项目 I 的内容. 可是!!我 I 部分的画面!就是加载不出来!!!QAQ 咋回事啊 我也很绝望啊!!! 由于<jsp:include>中url是由各个取得的参数拼成的,我怀疑是项目 I 那里参数接收的有问题,或者项

include指令和&lt;jsp:include&gt;标准动作

利用JSP的包含机制,可以有效的避免重复,把可重用的部分独立出去,使用include把它们包含到当前文件.JSP有两种包含机制:include指令和<jsp:include>标准动作. 1.include指令 2.<jsp:include>标准动作 3.内部原理 include指令和<jsp:include>标准动作看上去一样,而且通常有相同的效果,但是它们生成的servlet代码并不相同. include指令在转换时发生,它就像把被包含的文件复制到当前文件一样:<

structs2 jsp页面参数封装成类传递到action

中途切入一个系统的维护,而我又是菜鸟. 系统要实现从前端jsp页面输入查询条件,传入后台action进行处理.根据原来的系统本身的代码大概明白是jsp里ognl表达式传参数过去,但是一直不成功.百度各种办法,找到下面方法都试过,好像都不行.找耳挠腮搞半天才发现,我ognl表达式里的值得大小写和action里的类实例名不一致,真是不能更二咯-.- 对齐了jsp里的ognl表达式和action里的类实例名后,问题解决了.把我搜到的structs2 jsp传参数到后台action的方法记录下来,抄一遍

&lt;%@ include &gt; 与&lt; jsp:include &gt;

include指令表示在JSP编译时插入一个包含文本或者代码的文件,把文件中的文本静态地包含过去.也就是说,会把被包含的页面拷贝到包含的页面中指令所在的位置. 语法格式:<%@ include  file="relativeURL"%> relativeURL为包含进来的文件路径,可以是HTML,JSP文件,也可以是其他格式的文本文件. include在实际开发中到底有什么作用? 我们知道,在进行大型项目开发的时候,应尽量把各个组件模块化,JSP也是如此.例如,每个JSP页

JSP中的&lt;jsp:include...&gt;和&lt;%@include %&gt;

jsp中include有两种写法, 都是包含一个页面或者一个文件的意思, 写法略有不同 <jsp:include page = "url" />或者<jsp:include page = "url">子动作标识<jsp:param></jsp:include>(什么是子动作标识<jsp:param>) 还有一种是 <%@include file="path" %> 相对来讲,

JSP &lt;c:import&gt;和&lt;jsp:include&gt;区别【转】

<jsp:include page=""/> action和<c:import url=""/> jstl tag都是动态加载.但是c:import则更为灵活.jsp:include只能include当前web app下的页面,而c:import则可以从外部容器加载内容. 动态加载和静态加载最根本的不同在于,jsp生成的servlet的不同.在tomcat下静态(include directive)和动态(include action)的_j

关于 jsp:include 传参的用法

引用模版页面的代码,如下: <jsp:include page="/WEB-INF/template/nav_template.jsp">    <jsp:param value="core" name="street_core"/></jsp:include> 被引用页面接受参数的代码,如下: <a href="javascript:;" class="">