Visão geral das diretivas JSP

As páginas JSP contêm diretivas que direcionam o contêiner sobre o processamento da página; essas diretivas são associadas ao servlet compilado que é criado automaticamente pela página JSP. Enquanto as diretivas fornecem instruções de processamento para o contêiner executando o componente, a diretiva não cria nenhuma saída

  • A sintaxe padrão da diretiva é a seguinte -

JSP contém três diretivas -

  • Diretiva da página - Para definir configurações no nível da página, por exemplo - import - “java.util. *”
  • Incluir Diretiva - Para incluir um arquivo, por exemplo - file = ”Header.JSP”
  • Diretiva Taglib - contém ações personalizadas que podem ser usadas na página, por exemplo -

<%@ taglib prefix="s" uri ="/ struts - tags " %>

Várias diretivas JSP

As diretivas JSP são componentes de um código-fonte JSP que orienta o contêiner da Web sobre como converter a página JSP em seu servlet correspondente. Vejamos algumas diretrizes.

1. Diretiva Página

A diretiva page é usada para instruir o tradutor JSP sobre certos aspectos da página JSP atual, como o tipo de conteúdo a ser usado, como o idioma no qual a página deve ser escrita etc.

A diretiva de página tem a seguinte sintaxe -

Agora vamos definir uma lista de atributos usados ​​para a diretiva de página -

uma. Importar - É usado para declarar os tipos de java a serem usados ​​na página atual. Por exemplo, se queremos usar listas na página JSP e iterá-las, podemos importar o java.util.list, da mesma forma outros pacotes comuns como IO, util, etc podem ser importados da mesma maneira. Existem certas importações implícitas, que não precisamos declarar ao trabalhar com as páginas e servlets JSP nas Diretivas JSP, como segue:

  • lang
  • servlet
  • servlet.http
  • servlet.jsp

b. Sessão - Se definido como valor true, indica que a página participará do gerenciamento de sessões, o valor padrão também será true, ou seja, quando você chamar a página JSP, a instância javax.servlet.http.HttpSession será criada.

c. Buffer - Diz ao tamanho do buffer do objeto implícito em kb, é necessário mencionar kb no final do tamanho mencionado do buffer, o valor padrão é 8kb ou mais, dependendo do contêiner JSP, se estiver definido como nenhum, causará a saída a ser gravada diretamente no PrintWriter correspondente.

d. AutoFlush - O valor padrão é true, isso indica que o valor do buffer será automaticamente liberado quando o buffer estiver cheio. Um valor false indica que o buffer será liberado apenas se o método de liberação do objeto implícito de resposta for chamado.

e IsThreadSafe - É uma prática descontinuada, geralmente não usada, indica a segurança do encadeamento implementada na página.

f. Info - o valor de retorno do método GetServletInfo é especificado aqui.

g. Página de erro - incorporada para o tratamento de erros de página.

h. IsErrorPage - Informa se uma página pode lidar com erro ou não.

Eu. ContentType - Sempre que você envia os dados para o controlador no back-end, o corpo tem um tipo de conteúdo associado, como se você enviar JSON, XML, o texto sem formatação, o contêiner receberá um tipo de conteúdo com o qual responderá. O objeto de resposta será criado da mesma forma.

j. Codificação de página - O padrão é ISO-8859-1, indica a codificação de caracteres.

k) Idioma - usado para informar a linguagem de script usada em uma página, um valor padrão será apenas java.

eu. Estende - Usado para herdar a superclasse, como o layout base pode ser herdado em todas as páginas.

m. Aparar espaços em branco da diretiva - independentemente de o texto do modelo ter espaços em branco ou não, o padrão é falso.

2. Incluir diretiva

Se o conteúdo de uma página de Diretivas JSP precisar ser usado na outra JSP, precisaremos incorporar o endereço dessa JSP nela, o número de instruções include será igual ao número de páginas que você deseja importar para sua página atual. . A vantagem é que você não precisa escrever todo o conjunto de códigos dessa página para esta página, portanto, isso evita memória, tempo, complexidade e sobrecarga para os desenvolvedores quando qualquer alteração deve ser feita.

Exemplo: Você pode importar o cabeçalho .jsp, footer.jsp, baseBodyLayout.jsp em todas as outras páginas e apenas precisa fornecer o conteúdo a ser renderizado na página atual, com os detalhes específicos aderindo apenas à página atual.

A sintaxe dessa inclusão é -

Observe que a mesclagem dos arquivos incluídos ocorre apenas no momento da tradução e não no momento da solicitação, ou seja,

  1. Nenhum do código JSP incluído é executado; ainda não está compilado.
  2. Os arquivos são mesclados primeiro e, em seguida, toda a saída mesclada é convertida como uma unidade.
  3. Se os arquivos incluídos forem alterados, não há uma maneira geral de o contêiner conhecer e recompilar toda a unidade de tradução.

3. Diretiva Taglib

É usado para informar ao contêiner qual biblioteca de tags um JSP específico requer. Também é usado para atribuir um prefixo usado na página JSP para identificar tags de uma biblioteca de tags específica. Contêiner quando obtém esses taglibs, localiza o código para esses taglibs e os prepara para usar o JSP.

A sintaxe para usar o taglib é a seguinte -

Portanto, isso indica ao contêiner que todas essas tags são usadas nesta biblioteca de tags e serão prefixadas com o espaço de nome c: dentro dessas diretivas JSP. Esse URI pode ser associado a uma biblioteca de tags por meio de um arquivo TLD. O TLD pode ser mapeado usando um mapa taglib no arquivo web.xml ou por meio de um posicionamento específico no diretório META-INF em um arquivo JAR

O diretório de tags também pode ser especificado como -

Assim, você pode colocar moscas de tag em WEB-INF / tags e o contêiner obterá a partir daí.

Conclusão

Portanto, vimos as Diretivas JSP e que indicações as diretivas acima mencionadas realmente fornecem ao contêiner e como o contêiner mantém as coisas resolvidas no momento do uso, essas diretivas são usadas para adicionar comportamento dinâmico e sempre que projetos dinâmicos da Web são projetados, essas abordagens são fornecidas. digno. Da mesma forma, a abordagem foi usada em outras estruturas sinônimas como struts e muitas URLs estão disponíveis lá para esse uso.

Artigos recomendados

Este foi um guia para as diretivas JSP. Aqui discutimos o conceito, várias diretrizes e suas explicações com exemplos. Você também pode consultar nossos outros artigos sugeridos para saber mais -

  1. Perguntas da entrevista do JSP
  2. Diferença entre JSP vs ASP
  3. Tutoriais sobre arquitetura JSP
  4. Perguntas da entrevista J2EE que você deve saber