【目标】
1. 掌握JSP常用指令
2. 掌握JSP常用动作标签
【内容】
一 JSP常用指令
Jsp指令是通知jsp引擎的消息,它不会直接生成输出。编译指令都有默认的值。
Jsp中常用的指令有三种:
page指令:针对当前页面的指令。
include指令:用于指定包含另外一个页面。
taglib指令:用于定义和访问自定义标签
page指令
通过设置内部的多个属性来定义整个页面的属性
语法:<%@ page 属性1="属性值"属性2="属性值1,属性值2"… 属性n="属性值n"%>
page指令可以放在jsp文件的任何位置。
案例:errorPage
500.jsp
页面内容随便写
第二种错误页面的方式:在web.xml文件中添加error-page代码:
include指令
include指令可以再一个jsp页面中包含另一个页面。被包含的页面可以是记事本、html页面、jsp等。
include指令是静态包含,被包含的页面的内容会被原样包含到该页面中,最终生成一个文件。
在包含和被包含的文件中不能有相同名称的变量
语法:
<%@ includefile="被包含文件的地址" %>
案例:
两个文件中变量相同时:
taglib指令
通过taglib指令声明该页面中所使用的标签库,同时引用标签库,并标签库指定前缀。
语法:
<%@ taglibprefix="前缀" uri="标签uri地址 " %>
例如:
<%@ taglibprefix="c" uri="http://java.sun.com/jsp/jstl/core" %>
使用时:<c:if>…..</c:if>
二 JSP动作指令
Jsp的动作指令主要有7个:
jsp:forward:执行页面跳转,将请求的处理转发到下一个页面。
jsp:param:用于传递参数,必须与其他支持参数的标签一起使用。
jsp:include:用于动态的引入一个jsp文件。
jsp:plugin:用于下载JavaBean或者Applet到客户端执行(基本不用)
jsp:useBean:创建一个javaBean实例。
jsp:setProperty:设置javaBean实例的属性值。
jsp:getProperty:输出javaBean实例的属性值。
<jsp:include>指令
用于把另外的一个资源的输出内容插入到当前jsp页面的输出内容之中。
语法:
<jsp:include page=”被包含的文件的路径”/>
或者
<jsp:include page=”被包含的文件的路径”>
<jsp:param name=”参数的名字” value=”参数值” />
</jsp:include>
获取请求参数:request.getParameter(“参数名”)
案例:
静态包含include指令VS动态包含jsp:include
1. 静态包含是将两个页面合并到一个.java源文件中,再编译执行得到结果,最终只有一个.Java文件。
动态包含如果包含的页面是静态页面(html)则和静态包含原理一样,如果包含的是动态页面,则先编译,再包含,会得到两个.java文件。
2. 静态包含不可以传递参数,动态包含可以传递参数。
<jsp:forward>指令
用于把请求转发给另外一个资源。
语法:
<jsp:forward page=”跳转的文件路径”/>
或者
<jsp:forward page=”跳转的文件路径”>
<jsp:param value=”参数值” name=”参数名”/>
<jsp:param value=”参数值” name=”参数名”/>
</jsp:forward>
案例:登录
login.jsp
login_cl.jsp
main.jsp
jsp:param指令
用来在页面间传递参数,一般和<jsp:include>/<jsp:forward>配合使用
语法:
<jsp:paramvalue="参数值" name="参数名"/>