首页 > 代码库 > JSP-JSP指令与动作元素

JSP-JSP指令与动作元素

常用的有page、include、taglib指令这三种指令;
page:位于页面顶端,一个页面可以包含多个page指令
include:将一个外部文件嵌入jsp中,同时解析这个页面中的jsp语句。
taglib:使用标签库,自定义新的标签,在jsp中启动定制行为。

include指令 语法 <% include file="地址"%>。
案例:显示当前时间的页面。(1)写一个只输出时间的方法的date.jsp。(2)用于显示的页面,包含<% include file="date.jsp"%>



include动作:语法
<jsp:include page="URL" flush="true|false,默认为false" ></jsp:include>
page:要包含的页面
flush:被包含的页面是否使用缓冲读取
以下摘自评论区: JSP:include的flush属性的作用JSP 中include 另一个文件时有个很偏的属性,叫flush,默认为 false。在同一个 JSP 中,如果不断 include 自己(源文件),在逻辑上会形成死循环。而当把flush 属性赋为真值时,在缓存累积了一定数据时,服务器会先提供一部分数据给浏览器,并等待后续内容。由此可以得出结论,在简单页面中,该属性不纳入考虑,而在页面包含大量数据时,为缩短客户端延迟,可将一部分内容先行输出。


目前学了3种方法导入外面文件
1、pageContext的方法include()。
2、JSP的指领<%@ inlcude file="url"%>
3、javabean的动作元素<jsp:include page="url" flush="true|false">

技术分享

forward动作
语法:<jsp:forward page="URL"/>
等同于(服务器内部转发指令) request.getRequestDispacher("URL").forward(req,res);

四种跳转
<% response.sendRedirect("login_seccess.jsp"); %>//告诉浏览器此路不通,你再问问另一页面能解决你的问题不?
<jsp:forward page="login_fail.jsp"/> //服务器将请求转发到另一页面,浏览器不知情.
<% pageContext.forward("login_fail.jsp");%> //服务器将请求转发到另一页面,浏览器不知情.
<% request.getRequestDispatcher("login_fail.jsp").forward(request,response);%> //服务器将请求转发到另一页面,浏览器不知情.


param动作1、语法:<jsp:param name="参数名" value="http://www.mamicode.com/参数值">
2、【常常与<jsp:forward></jsp:forward>一起使用】,并作为其【子标签】。
3、用于传递新参数或者【修改原有参数值】,修改参数时使用form表单里的参数名称即可。同样用request.getParameter("参数名")获取

必须与forward、include及plugin动作配合使用。通常与forward动作一起使用,作为它的子标签,它的作用是指定某个参数值,可以用于传递参数,
<jsp:forward page="url"> 
  <jsp:param value="http://www.mamicode.com/123@qq.com" name="email"/> 
</jsp:forward>

JSP-JSP指令与动作元素