O que é Expression Language (EL)?
Expression Language (EL) é um mecanismo que simplifica a acessibilidade dos dados armazenados no componente Java bean e outro objeto como solicitação, sessão e aplicativo, etc. Existem muitos operadores em JSP que são usados em EL como operadores lógicos e aritméticos para realizar um expressão. Foi introduzido em JSP 2.0
Neste tutorial, você aprenderá-
- Sintaxe JSP de linguagem de expressão (EL)
- JSP If-else
- JSP Switch
- JSP For loop
- JSP While loop
- Operadores JSP
Sintaxe JSP de linguagem de expressão (EL)
Sintaxe de EL : $ (expressão)
- Em JSP, tudo o que está presente nas chaves é avaliado no tempo de execução enviado para o fluxo de saída.
- A expressão é uma expressão EL válida e pode ser misturada com um texto estático e pode ser combinada com outra expressão para formar uma expressão maior.
Para se ter uma ideia melhor de como funciona a expressão em JSP, veremos o exemplo a seguir.
Neste exemplo, veremos como EL é usado como um operador para adicionar dois números (1 + 2) e obter a saída, respectivamente.
<% @ page language = "java" contentType = "text / html; charset = ISO-8859-1"pageEncoding = "ISO-8859-1"%>Guru JSP1 Expressão é: $ {1 + 2};
Explicação do código:
- Linha de código 11: Expression Language (EL) é definido onde estamos adicionando dois números 1 + 2, portanto, dará a saída como 3.
Ao executar o código acima, você terá a seguinte saída.
Produto :
- A expressão é: 3 (como os números 1 + 2 serão adicionados e servirão como uma saída)
Declarações de controle de fluxo:
JSP fornece o poder do Java para ser integrado ao aplicativo. Podemos usar todas as APIs e blocos de construção de Java na programação JSP, incluindo instruções de fluxo de controle que incluem a tomada de decisão e as instruções de loop.
Existem dois tipos de declarações de controle de fluxo descritos abaixo;
- Declarações de tomada de decisão
- Demonstrações de Loop
Declarações de tomada de decisão:
A instrução de tomada de decisão em JSP é baseada no fato de o conjunto de condições ser verdadeiro ou falso. A declaração se comportará de acordo.
Existem dois tipos de declarações de tomada de decisão descritos abaixo:
- If - else
- interruptor
JSP If-else
A instrução "If else" é básica para todas as instruções de fluxo de controle e diz ao programa para executar determinada seção de código apenas se o teste específico for avaliado como verdadeiro.
Esta condição é usada para testar mais de uma condição, sejam verdadeiras ou falsas.
- Se a primeira condição for verdadeira, então "if block" é executado e
- se for falso então "outro bloco" é executado
Sintaxe para a instrução if - else :
If(test condition){//Block of statements}else{//Block of statements}
Neste exemplo,
Vamos testar a condição "if else" pegando a variável e verificando o valor se a variável corresponde ao que foi inicializado:
<% @ page language = "java" contentType = "text / html; charset = ISO-8859-1"pageEncoding = "ISO-8859-1"%>Guru JSP2 <%! mês int = 5; %><% if (mês == 2) {%> É fevereiro <%} mais {%> Qualquer mês, exceto fevereiro <%}%>
Explicação do código:
- Linha de código 10: a variável chamada mês é inicializada em 5 nas tags de expressão
- Linha de código 11: nas tags EL há "condição se" informando que se o mês for igual a 2 (a condição é testada aqui como verdadeira ou falsa)
- Linha de código 12: se a condição for verdadeira de que a variável mês é 2, ela será impressa no fluxo de saída
- Linha de código 13-15: Se a condição if acima falhar, ele será movido para a parte else para todos os outros casos em que a instrução será impressa no fluxo de saída e a condição for fechada
Ao executar o código acima, você terá a seguinte saída.
Resultado:
- Como o mês que temos é 5, não é igual a # 2 (fevereiro). Portanto, temos a saída "Qualquer mês diferente de fevereiro" (o mês é mencionado como 5, portanto, os outros são executados)
JSP Switch
O corpo da instrução switch é denominado "bloco switch".
- O caso de switch é usado para verificar o número de caminhos de execução possíveis.
- Um switch pode ser usado com todos os tipos de dados
- As instruções switch contêm mais de um caso e um caso padrão
- Ele avalia a expressão e, em seguida, executa todas as instruções seguindo o caso correspondente
Sintaxe para a instrução switch :
switch (operator){Case 1:Block of statementsbreak;Case 2:Block of statementsbreak;case n:Block of statementsbreak;default:Block of statementsbreak;}
- O bloco de switch começa com um parâmetro, que é o operador que precisa ser passado e
- Então, existem diferentes casos que fornecem a condição e o que combinar com o operador, esse caso é executado.
No exemplo abaixo,
Definimos uma semana variável e ela é combinada com o caso, o que for verdadeiro. Neste caso, a semana é 2, portanto, o 2º caso é correspondido e a saída é terça-feira:
<% @ page language = "java" contentType = "text / html; charset = ISO-8859-1"pageEncoding = "ISO-8859-1"%>Guru JSP3 <%! semana interna = 2; %><% switch (semana) {caso 0:out.println ("domingo");intervalo;caso 1:out.println ("segunda-feira");intervalo;caso 2:out.println ("terça-feira");intervalo;caso 3:out.println ("quarta-feira");intervalo;caso 4:out.println ("quinta-feira");intervalo;caso 5:out.println ("sexta-feira");intervalo;predefinição:out.println ("sábado");}%>
Explicação do código:
- Linha de código 10: a variável chamada semana é inicializada em 2 nas tags de expressão
- Linha de código 11: nas tags EL, o caso do interruptor é iniciado, onde a semana é passada como parâmetro
- Linha de código 12 - 29: Todos os casos foram mencionados a partir do caso 0 ao caso 5, onde o valor do parâmetro da semana corresponde aos casos e, consequentemente, a saída é impressa. Neste caso, o valor é 2, portanto, o caso 2 será executado neste caso. Aqui, "out" é a classe de JSP que grava o fluxo de saída para a resposta gerada e "println" é um método dessa classe.
- Linha de código 30-32: Se todos os casos acima falharem, ele moverá para a parte padrão e será executado, onde a instrução será impressa no fluxo de saída e a condição será fechada
Ao executar o código acima, você terá a seguinte saída.
Resultado:
- A saída, neste caso, é terça-feira, pois o segundo caso é chamado.
Demonstrações de Loop
JSP For loop
É usado para iterar os elementos para uma determinada condição e tem três parâmetros.
- Contador de variável inicializado
- Condição até que o loop seja executado
- O contador deve ser incrementado
Para loop Sintaxe:
For(inti=0;iNeste exemplo,
Temos loop for que itera até que o contador seja menor que o número fornecido:
<% @ page language = "java" contentType = "text / html; charset = ISO-8859-1"pageEncoding = "ISO-8859-1"%>Guru JSP4 <%! int num = 5; %><% out.println ("Os números são:");para (int i = 0; iExplicação para o código:
- Linha de código 10: a variável chamada "num" é inicializada em 5 nas tags de expressão
- Linha de código 11-14: Nas tags EL, "out" é a classe de JSP e "println" é o método de out que imprime no fluxo de saída e o loop for é iniciado com três parâmetros:
- A variável i é inicializada com 0,
- A condição é dada onde i é menor que a variável local num,
- E i é incrementado toda vez que o loop itera.
No corpo de "forloop", existe uma classe de JSP que imprime no fluxo de saída usando o método println, onde estamos imprimindo a variável i.
Ao executar o código acima, você terá a seguinte saída.
Resultado:
- Os números de saída são 0 1 2 3 4. Neste exemplo, estamos dando a condição de que até que o contador seja menor que igual a uma variável, o "loop for" deve ser executado. O num é 5, então o loop começará de 0 e será executado até 4 (5 vezes). Daí a saída.
JSP While loop
É usado para iterar os elementos em que tem um parâmetro da condição.
Sintaxe:
While(iNeste exemplo,
Temos um loop while que irá iterar até que o dia seja maior que igual ao contador:
<% @ page language = "java" contentType = "text / html; charset = ISO-8859-1"pageEncoding = "ISO-8859-1"%>Guru JSP5 <%! dia int = 2; int i = 1; %><% enquanto (dia> = i) {if (dia == i) {out.println ("É segunda-feira");intervalo;}i ++;}%>Explicação do código:
- Linha de código 10: a variável chamada i é inicializada em 1 e o dia é 2 nas tags de expressão
- Linha de código 11-17: Nas tags EL, há "loop while" que irá iterar até que tenhamos uma condição definida como se o dia for maior ou igual a i variável será verdadeira. (dia> = i)
Dentro disso, há "se condição" (dia é igual a i) e "se condição" for verdadeira, então ele imprimirá o fluxo de saída e sairá do loop while, caso contrário, a variável i é incrementada e o loop itera.
Quando executamos o código, teremos a seguinte saída
O resultado é:
- A saída deste código será "sua segunda-feira".
Operadores JSP
JSP Operators suporta a maioria de seus operadores aritméticos e lógicos que são suportados por java dentro de tags de linguagem de expressão (EL).
Operadores usados com frequência são mencionados abaixo:
A seguir estão os operadores:
. Acesse uma propriedade de bean ou entrada de mapa [] Acesse uma matriz ou elemento de lista () Agrupe uma subexpressão para alterar a ordem de avaliação + Adição - Subtração ou negação de um valor * Multiplicação / ou div Divisão % ou mod Módulo (resto) == ou eq Teste de igualdade ! = ou ne Teste de desigualdade Teste por menos de > ou gt Teste para maior que <= ou le Teste para menor ou igual > = ou ge Teste para maior ou igual && ou e Teste para AND lógico || ou ou Teste para OR lógico ! ou não Complemento booleano unário Vazio Teste para valores de variáveis vazios Neste exemplo,
- Estamos declarando duas variáveis num1 e num2 e, em seguida, pegamos uma variável num3, onde usamos o operador JSP + by para adicionar num1 e num2 e obter num3.
- Em seguida, verificamos se num3 não é igual a 0 usando operadores JSP (! =,>) E
- Em seguida, pegue outra variável num4, multiplicando dois num1 e num2, obtemos num4.
Todos esses números devem ser impressos como nossa saída:
<% @ page language = "java" contentType = "text / html; charset = ISO-8859-1"pageEncoding = "ISO-8859-1"%>Guru JSP6 <% int num1 = 10; int num2 = 50;int num3 = num1 + num2;if (num3! = 0 || num3> 0) {int num4 = num1 * num2;out.println ("Número 4 é" + num4);out.println ("Número 3 é" + num3);}%>Explicação do código:
- Linha de código 10: a variável chamada num1 é inicializada em 10 e num2 em 50 nas tags de expressão
- Linha de código 11: A variável num3 é a soma de num1 e num2, onde estamos usando o operador de adição
- Linha de código 12-16: Nas tags EL, usamos uma condição OR que é um operador lógico e operadores aritméticos para verificar se num3 é maior que 0 na condição if. O OR é usado quando qualquer condição é verdadeira, nesse caso, ele entrará no "caso se", onde estamos multiplicando dois números "num1" e "num2" e obtendo a saída em "num4" e imprimirá o fluxo de saída.
Ao executar o código acima, você terá a seguinte saída.
Resultado:
- A primeira saída é o número 4 é 500 (variável num4 que é num1 * num2)
- A segunda saída é o número 3 é 60 (variável num3 que num1 + num2)
Resumo:
- JSP Expression Language (EL) torna mais fácil acessar o aplicativo para os dados armazenados nos componentes JavaBeans.
- Também permite criar expressões aritméticas e lógicas.
- Dentro das tags EL, podemos usar números inteiros. Números de ponto flutuante, strings e valores booleanos.
- Em JSP, também podemos usar loops e instruções de tomada de decisão usando tags EL