小言_互联网的博客

JavaWeb核心技术系列教程(21)——JSP指令

326人阅读  评论(0)

C语言自学完备手册(33篇)

Android多分辨率适配框架

JavaWeb核心技术系列教程

HTML5前端开发实战系列教程

MySQL数据库实操教程(35篇图文版)

推翻自己和过往——自定义View系列教程(10篇)

走出思维困境,踏上精进之路——Android开发进阶精华录

讲给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
查看评论
* 以上用户言论只代表其个人观点,不代表本网站的观点或立场