2021-04-21 22:03  阅读(71)
文章分类:JSP 简单教程 文章标签:JSP
©  原文作者:一点教程 原文地址:http://www.yiidian.com/jsp/

1 JSP指令有哪些

JSP指令是通知Web容器如何在JSP页面翻译成相应的Servlet的消息。

指令分为三种:

  • Page指令
  • Include指令
  • Taglib指令

2 JSP指令语法

    
    <%@ 指令名 属性名称="属性值" %>  

3 JSP Page指令

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

4 JSP Page指令的语法

    
    <%@ page attribute="value" %>  

5 JSP Page指令的属性

page指令有以下属性:

  • import
  • contentType
  • extends
  • info
  • buffer
  • language
  • isELIgnored
  • isThreadSafe
  • autoFlush
  • session
  • pageEncoding
  • errorPage
  • isErrorPage

接下来分别介绍它们:

5.1 import

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

import属性的示例:

    
    <%@ page import="java.util.Date" %>
    <html>
    <html>
    <head>
        <meta charset="utf-8">
        <title>一点教程网-import属性的示例</title>
    </head>
    <body>
    
    
    Today is: <%= new Date() %>
    
    </body>
    </html>

5.2 contentType

contentType属性定义HTTP响应的MIME类型。默认值为"text/html;charset=ISO-8859-1",通常如果要显示中文内容,需要修改为:"text/html;charset=utf-8"。

    
    <%@ page contentType="text/html;charset=utf-8" %>
    <html>
    <html>
    <head>
        <meta charset="utf-8">
        <title>一点教程网-contentType属性的示例</title>
    </head>
    <body>
    
    
    这是contentType属性的示例
    
    </body>
    </html>

5.3 extends

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

5.4 info

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

info属性的示例:

    
    <%@ page info="该页面由一点教程网维护" contentType="text/html;charset=utf-8" %>
    <html>
    <html>
    <head>
        <meta charset="utf-8">
        <title>一点教程网-info属性的示例</title>
    </head>
    <body>
    
    
    这是info属性的示例
    
    </body>
    </html>

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

    
    public String getServletInfo() {  
      return "该页面由一点教程网维护";   
    }  

5.5 buffer

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

buffer属性的示例:

    
    <%@ page buffer="16kb" contentType="text/html;charset=utf-8" %>
    <html>
    <html>
    <head>
        <meta charset="utf-8">
        <title>一点教程网-buffer属性的示例</title>
    </head>
    <body>
    
    
    这是buffer属性的示例
    
    </body>
    </html>

5.6 language

language属性指定JSP页面中使用的脚本语言。默认值为"java",该值通常不用修改。

5.7 isELIgnored

我们可以通过isELIgnored属性忽略JSP中的EL表达语言。默认情况下,其值为false,即默认情况下启用了EL表达式语言。后面内容我们会介绍EL表达式语言

    
    <%@ page isELIgnored="true" %>//忽略EL表达式

5.8 isThreadSafe

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

    
    <%@ page isThreadSafe="false" %>

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

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

5.9 errorPage

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

errorPage属性的示例:

    
    <%@ page errorPage="error.jsp"  contentType="text/html;charset=utf-8" %>
    <html>
    <html>
    <head>
        <meta charset="utf-8">
        <title>一点教程网-errorPage属性的示例</title>
    </head>
    <body>
    
    
    <% int i = 100/0; %>
    
    </body>
    </html>

5.10 isErrorPage

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

isErrorPage属性的示例:

    
    <%@ page isErrorPage="true" contentType="text/html;charset=UTF-8"  %>
    <html>
    <head>
        <title>一点教程网-JSP isErrorPage属性的示例</title>
    </head>
    <body>
    系统异常,异常信息:<%= exception %>
    </body>
    </html>
    

注意:exception内置对象只能在错误页面中使用。

点赞(0)
版权归原创作者所有,任何形式转载请联系作者; Java 技术驿站 >> JSP指令-Page指令
上一篇
JSP内置对象-Out
下一篇
JSP指令-Include指令