As diretivas JSP são os elementos de um código-fonte JSP que orientam o contêiner da web sobre como traduzir a página JSP em seu respectivo servlet.
Sintaxe:

<%@ directive attribute = "value"%>

As diretivas podem ter vários atributos que você pode listar como pares de valores-chave e separados por vírgulas. Os espaços em branco entre o símbolo @ e o nome da diretiva, e entre o último atributo e o%> de fechamento, são opcionais.
Diferentes tipos de diretivas JSP:
Existem três diretivas JSP diferentes disponíveis. Eles são os seguintes:

  1. Diretivas de página: a diretiva de página JSP é usada para definir as propriedades de aplicação da página JSP, como o tamanho do buffer alocado, pacotes importados e classes / interfaces, definindo que tipo de página é, etc. A sintaxe da diretiva de página JSP é como segue:
    <% @ page attribute = "value"%>

    Propriedades / atributos diferentes:
    a seguir estão as diferentes propriedades que podem ser definidas usando a diretiva de página:

    • import : Isso informa ao contêiner quais pacotes / classes são necessários para serem importados para o programa.

      Sintaxe :

      <% @ page import = "value"%>

      Exemplo :






      <%-- JSP code to demonstrate how to use page
       directive to import a package --%>
        
      <%@page import = "java.util.Date"%>
      <%Date d = new Date();%>
      <%=d%>

      Produto :

    • contentType : define o formato dos dados que estão sendo trocados entre o cliente e o servidor. Ele faz a mesma coisa que o método setContentType no servlet usado para fazer.

      Sintaxe :

      <% @ page contentType = "value"%>
      Exemplo de uso:




      <%-- JSP code to demonstrate how to use
      page directive to set the type of content --%>
        
      <%@page contentType = "text/html" %>
      <% = "This is sparta" %>

      Saída :

    • info : define a string que pode ser impressa usando o método 'getServletInfo()'.

      Sintaxe :

      <% @ page info = "value"%>

      Exemplo de uso :




      <%-- JSP code to demonstrate how to use page
       directive to set the page information --%>
        
      <%@page contentType = "text/html" %>
      <% = getServletInfo()%>

      Produto :

    • buffer : define o tamanho do buffer alocado para lidar com a página JSP. O tamanho é definido em Kilo Bytes.

      Sintaxe :

      <% @ page buffer = "tamanho em kb"%>
    • idioma : define a linguagem de script usada na página. Por padrão, este atributo contém o valor 'java'.
    • isELIgnored : Este atributo informa se a página oferece suporte à linguagem de expressão. Por padrão, é definido como falso. Se definido como verdadeiro, desabilitará a linguagem de expressão.

      Sintaxe :

      <% @ page isElIgnored = "true / false"%>

      Exemplo de uso :






      <%-- JSP code to demonstrate how to use page 
      directive to ignore expression language --%>
        
      <%@page contentType = "text/html" %>
      <%@page isELIgnored = "true"%>
      <body bgcolor = "blue">
      <c:out value = "${'This is sparta}"/>
      </body>

      Resultado :
      (página em branco)

    • errorPage : Define para qual página redirecionar, caso a página atual incentive uma exceção.
      Sintaxe :
      <% @ page errorPage = "true / false"%>

      Exemplo de uso:




      //JSP code to divide two numbers
      <%@ page errorPage = "error.jsp" %>  
        
      <%   
      // dividing the numbers
      int z = 1/0;  
        
       // result 
      out.print("division of numbers is: " + z);   
      %>  
    • isErrorPage : Classifica se a página é uma página de erro ou não. Ao classificar uma página como uma página de erro, ele pode usar o objeto implícito 'exceção', que pode ser usado para exibir exceções que ocorreram.

      Sintaxe :

      <% @ page eisrrorPage = "true / false"%>

      Exemplo de uso :




      //JSP code for error page, which displays the exception
      <%@ page isErrorPage = "true" %>  
           
      <h1>Exception caught</h1>  
           
      The exception is: <% = exception %> 
      Output:

      Produto :

    • Incluir diretiva:

      A diretiva de inclusão JSP é usada para incluir outros arquivos na página jsp atual. Esses arquivos podem ser arquivos html, outros arquivos sp etc. A vantagem de usar uma diretiva de inclusão é que ela permite a reutilização do código.

      A sintaxe de uma diretiva de inclusão é a seguinte:

      <@% include file = "file location"%>

      Exemplo de uso :
      No código a seguir, estamos incluindo o conteúdo de um arquivo html em uma página jsp.

      a.html




      <h1>This is the content of a.html</h1>

      index.jsp




      <% = Local content%>
      <%@include file = "a.html"%>
      <% = local content%>

      Saída :

    • Diretiva Taglib: A diretiva taglib é usada para mencionar a biblioteca cujas tags personalizadas estão sendo usadas na página JSP. Sua principal aplicação é JSTL (biblioteca de tags padrão JSP).

      Sintaxe :

      <@% taglib uri = "url da biblioteca" prefix = "o prefixo para 
      identifique as tags desta biblioteca com "%>

      Exemplo de uso :




      <%-- JSP code to demonstrate 
      taglib directive--%>
      prefix = "c" %>  
          
      <c:out value = "${'This is Sparta'}"/> 

      No código acima, usamos a diretiva taglib para apontar para a biblioteca JSTL, que é um conjunto de algumas tags personalizadas em JSP que podem ser usadas no lugar da tag scirptlet (<% ..%>). O atributo prefix é usado para definir o prefixo que é usado para identificar as tags desta biblioteca. Aqui, o prefixo c é usado na tag <c: out> para informar ao contêiner que essa tag pertence à biblioteca mencionada acima.

      Produto :