📜  JSP指令| JSP页面指令

📅  最后修改于: 2021-01-05 01:03:37             🧑  作者: Mango

JSP指令

jsp伪指令是告诉Web容器如何将JSP页面转换为相应servlet的消息。

指令分为三种:

  • 页面指令
  • 包含指令
  • taglib指令

JSP指令的语法

<%@ directive attribute="value" %>

JSP页面指令

page指令定义了适用于整个JSP页面的属性。

JSP页面指令的语法

<%@ page attribute="value" %>

JSP页面指令的属性

  • 进口
  • 内容类型
  • 延伸
  • 信息
  • 缓冲
  • 语言
  • 被忽略
  • isThreadSafe
  • 自动冲洗
  • 会议
  • pageEncoding
  • errorPage
  • isErrorPage

1)进口

import属性用于导入类,接口或包的所有成员。类似于java类或接口中的import关键字。

导入属性示例





<%@ page import="java.util.Date" %>
Today is: <%= new Date() %>




2)contentType

contentType属性定义HTTP响应的MIME(多用途Internet邮件扩展)类型。默认值为“ text / html; charset = ISO-8859-1”。

contentType属性的示例





<%@ page contentType=application/msword %>
Today is: <%= new java.util.Date() %>




3)延伸

extend属性定义了将由生成的servlet继承的父类。它很少使用。

4)信息

此属性仅设置JSP页面的信息,该信息稍后将使用Servlet接口的getServletInfo()方法进行检索。

信息属性示例





<%@ page info="composed by Sonoo Jaiswal" %>
Today is: <%= new java.util.Date() %>




Web容器将在生成的servlet中创建方法getServletInfo(),例如:


public String getServletInfo() {
  return "composed by Sonoo Jaiswal"; 
}

5)缓冲

buffer属性设置缓冲区大小(以千字节为单位)以处理JSP页面生成的输出。缓冲区的默认大小为8Kb。

缓冲区属性示例





<%@ page buffer="16kb" %>
Today is: <%= new java.util.Date() %>




6)语言

language属性指定在JSP页面中使用的脚本语言。默认值为“ java”。

7)被忽略

我们可以通过isELIgnored属性忽略jsp中的表达语言(EL)。默认情况下,其值为false,即默认情况下启用了表达式语言。稍后我们将介绍表达式语言。


<%@ page isELIgnored="true" %>//Now EL will be ignored

8)isThreadSafe

Servlet和JSP都是多线程的,如果要控制JSP页面的这种行为,可以使用page指令的isThreadSafe属性。isThreadSafe值的值为true。如果为false,则Web容器将序列化多个请求,也就是说,它将等到JSP完成对请求的响应之前,再将另一个请求传递给它。如果使isThreadSafe属性的值如下所示:

<%@页面isThreadSafe =“ false”%>

在这种情况下,Web容器将生成servlet,如下所示:


public class SimplePage_jsp extends HttpJspBase 
  implements SingleThreadModel{
.......
}

9)错误页面

errorPage属性用于定义错误页面,如果当前页面中发生异常,它将被重定向到错误页面。

errorPage属性的示例

//index.jsp



<%@ page errorPage="myerrorpage.jsp" %>

 <%= 100/0 %>




10)isErrorPage

isErrorPage属性用于声明当前页面是错误页面。

注意:异常对象只能在错误页面中使用。

isErrorPage属性的示例

//myerrorpage.jsp



<%@ page isErrorPage="true" %>

 Sorry an exception occured!
The exception is: <%= exception %>