JSP指令
(1)page指令:
page指令的属性
属性 | 含义 |
---|---|
import=“importList” | 此JSP网页使用哪些JAVA API |
info=“text” | 此JSP网页的相关信息 |
errorPage=“error+url” | 发生异常时被重新指向哪一个URL |
isErrorPage=“true|false” | 此网页是否处理异常错误的网页 |
contentType=“ctinfo” | MIME类型和JSP网页的编码方式 |
pageEncoding=“ctinfo” | JSP网页的编码模式 |
1、include指令
include指令标记的作用是在JSP页面出现该指令的位置处,静态插入一个文件,通常用来包含网站中经常出现的重复HTML页面和JSP页面
语法:<%@ include file=“文件的URL” %>
注:(1)静态插入就是当前JSP页面和插入的文件合并成一个新的JSP页面,然后再将这个新的JSP页面转译成Java文件
(2)如果包含的静态文件里面有汉字,就必须在前面加上page指令,变成一个JSP文件
(3)include属于静态包含,发生在编译之前
处理方式:使用include被包含的文件,它的内容会原封不动的插入到包含页中使用该指令的位置,然后JSP再对这个合成的文件进行翻译,所以在一个页面中使用include指令来包含另外一个JSP页面,最终编译的文件只有一个
(3)taglib指令
- Oracle公司允许用户开发自定义标签封装页面的Java代码,以便JSP页面不出现一行Java代码
- Taglib指令用于在JSP页面中导入标签库
注:标签:就是我们封装了一段Java代码,然后把这些代码存成一个文件,这些文件以标签的形式去调用
<%@ taglib uri=“标签库表述符文件” prefix=“前缀名”%>
<html>
<body>
<%@ taglib uri="/mytaglib.tld" prefix="mytags"%>
</body>
</html>
2、动作元素
以"<jsp:动作名" 开始,>以“</jsp:动作名 >”结束
1、jsp:include动作
jsp:include动作指令表示在当前的JSP页面中,包含静态或动态资源。插入文件的时间是在页面被请求的时候,可以包含txt文件、JSP文件、HTML文件、Servlet文件
运行结果:
此外,include还可以包含变量
使用jsp:include动作标识通常是来包含哪些经常需要改动的文件。此时服务器执行的是两个文件,被包含文件的改动不会影响到主文件,因此服务器不会对主文件重新编译,而只需要重新编译被包含文件的文件即可。
对被包含文件的编译是在执行时才进行的,也就是说,只有当jsp:include动作标识被执行时,使用该标识包含的目标文件才会被编译,否则包含的文件不会被翻译,所以这种包含过程称为动态包含。
2、jsp:forward动作
jsp:forward动作用于将请求转发到另一个JSP、Servlet或者静态资源文件。每当遇到此操作,就会停止执行当前的JSP,转而执行转发的资源
注:forward页面跳转
(1)客户端跳转 (可以通过超链接,表单提交实现)
(2)服务器端跳转
语法: <jsp:forward page=“relative URL”>
3、jsp:param动作
jsp:param动作用于页面之间传递参数。在使用jsp:param动作时,必须配合jsp:include、jsp:forward动作使用
注:param只能作为子标签使用
<jsp:param name=“parameterName” value=“parameterValue”>
paramMain.jsp
<%="<jsp:param> 测试" %>
<jsp:include page="paramInclude.jsp" flush="true">
<jsp:param name="username" value="某某某"/>
<jsp:param name="password" value="108"/>
</jsp:include>
paramInclude.jsp
用户名:<%=request.getParameter(“username”)%><br>
用户密码:<%=request.getParameter(“password”)%>