讲给Android程序员看的前端系列教程(40集免费视频教程+源码)
版权声明
- 本文原创作者:谷哥的小弟
- 作者博客地址:http://blog.csdn.net/lfdfhl
JSP指令概述
JSP指令用于设置整个JSP页面的属性。也就是说:JSP指令用于告知JSP引擎如何处理JSP页面中代码。
语法如下:
<%@ 指令名称 属性1="属性值1" 属性2="属性值2"…….%>
在JSP 2.0规范中定义了三个指令:
- page指令
- include指令
- taglib指令
page指令
page指令用于定义JSP页面的属性和特征;例如:指定页面的编码方式、页面采用的语言等等。
语法如下:
<%@ page 属性1="属性值1" 属性2="属性值2"……%>
在此,介绍page指令常用属性。
language
该属性用于指明翻译该JSP文件时应采用的语言,默认为Java。
pageEncoding
该属性用于指定JSP页面的编码方式。
contentType
该属性用于指定JSP页面的文档类型。
import
该属性用于指定导入的包或者引用的类。
在JSP中默认导入以下四个包,不需再次明确引用:
- java.lang.*
- javax.servlet.*
- javax.servlet.jsp.*
- javax.servlet.http.*
除此以外,其它包需要通过import属性引入。
errorPage
该属性用于指定JSP程序报错时跳转到页面。
isErrorPage
该属性用于指定JSP页面是否为错误处理页面,默认情况下该属性值为false;如果该值为true则该JSP内置Exception对象。
session
该属性用于指明该JSP页面是否有内置session对象,默认情况下该属性值为true。
isELIgnored
该属性用于指明是否支持EL表达式,默认情况下该属性值为false。
include指令
有时需要在JSP页面静态包含其它资源文件,例如:HTML文件,JSP文件、文本文件等等。此时,可通过include指令来实现。
语法如下:
<%@ include file="资源文件url地址" %>
taglib指令
taglib指令常用于在JSP页面中导入JSTL标签库。
语法如下:
<%@ taglib uri="标签库uri" prefix="前缀" %>
示例如下:
<%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c" %>
JSP指令应用示例
在此,以示例形式介绍JSP指令的使用。
指定错误页面
使用JSP指令指定当JSP页面发生错误时跳转到指定的错误页面。
项目结构
index.jsp
<%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%>
<%-- 利用page指令的errorPage指定处理错误的页面 --%>
<%@ page errorPage="error.jsp"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>index</title>
</head>
<body>
<%
int i = 9527 / 0;
%>
</body>
</html>
error.jsp
<%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%>
<%-- 利用page指令的isErrorPage指定该JSP页面为处理错误的页面 --%>
<%@ page isErrorPage="true"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>error</title>
</head>
<body>
<h2 align="left" style="color: red;">本文作者:谷哥的小弟</h2>
<h2 align="left" style="color: red;">博客地址:http://blog.csdn.net/lfdfhl</h2>
<h3>抱歉,您所访问的页面出错,我们正在紧急修复中,请稍等.....</h3>
<%
exception.printStackTrace(response.getWriter());
%>
</body>
</html>
部署测试
部署该Web应用至服务器后在浏览器中输入访问地址:http://localhost:8080/Jsp07/index.jsp
包含其它资源
使用JSP指令在当前页面中包含其它资源。
项目结构
在jspfragments中创建了两个JSP片段,其后缀名为.jspf
footer.jspf
<%--请注意:该文件为JSP片段fragment , 后缀名为.jspf--%>
<%@ page language="java" import="java.util.*" pageEncoding="UTF-8"%>
<h1 style="color:blue;">网页尾部内容</h1>
header.jspf
<%--请注意:该文件为JSP片段fragment , 后缀名为.jspf--%>
<%@ page language="java" import="java.util.*" pageEncoding="UTF-8"%>
<h1 style="color:red;">网页头部内容</h1>
index.jsp
<%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>include</title>
</head>
<body>
<%--使用include指令引入JSP片段fragment--%>
<%@include file="/jspfragments/header.jspf" %>
<h1>网页主体内容</h1>
<%@include file="/jspfragments/footer.jspf" %>
</body>
</html>
部署测试
部署该Web应用至服务器后在浏览器中输入访问地址:http://localhost:8080/Jsp09/index.jsp
转载:https://blog.csdn.net/lfdfhl/article/details/102074695