gramática común y el uso de bibliotecas de etiquetas JSP JSTL

concepto

JSTL: escribir código Java de páginas JSP
J AVA S erver T AG L ibrary la etiqueta de JSP Standard Biblioteca

Es decir, dentro de la biblioteca de etiquetas contiene una gran cantidad de biblioteca de etiquetas
JSTL es de código abierto y la biblioteca de etiquetas JSP gratuito proporcionado por la organización Apache
de código Java en simplificar y sustituir página JSP
código de Java para simplificar la preparación de la JSP reemplace <%%> redacción y EL con la expresión

uso

  • 1, en javax.servlet.jsp.jstl.jar y jstl-impl.jar paquete
  • 2, utilice la página <%@ taglib %>para introducir la biblioteca de etiquetas
  • 3, usando etiquetas

La introducción de la biblioteca de códigos:
En la parte superior de la página más taglib JSP etiqueta de
sintaxis:<%@taglib prefix="标签库的别名" uri="标签库的路径"%>

La introducción de la versión 1.1 trayectoria del núcleo
que es http://java.sun.com/jsp/jstl/core
porque la versión 1.0 del núcleo no soporta expresiones EL

<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %>

Etiquetas de usadas comúnmente

c: si

Java equivalente de la sentencia if para
determinar si la lista juego de solicitudes campo está vacío o nulo si el conjunto de visualización y transversal

<%
	List list=new ArrayList();
	list.add("我是list中的内容");
	request.setAttribute("list",list);
%>

<c:if test="${!empty requestScope.list}">
	${requestScope.list}
</c:if>

atributo de prueba para recibir una expresión booleana si es verdad displays luego <c:if>la etiqueta de contenido a falso si el cuerpo no se muestra
el uso de valores de prueba con la propiedad general de la unión expresión EL

Nota: c: si no hay otra cosa que quiere lograr el efecto más puede escribir una <c:if>etiqueta

<c:if test="${requestScope.number%2!=0}">
        ${number}为奇数
</c:if>
<c:if test="${requestScope.number%2==0}">
        ${number}为偶数
</c:if>

propiedades var en el resultado representa el resultado en el texto serán almacenados expresión EL para dar como resultado en la variable
y predeterminada para guardarlo dominio pageContext que
por supuesto también se puede utilizar alcance dominios de atributos representados por ejemplo alojado scope = "sesión" es mostrar sesiones para mantener el dominio


c: choose

== "c: cuándo y C: de lo contrario
corresponde en Java sentencia switch determina
sentencia switch es decir, si ... otra cosa ... una forma simplificada de la declaración es una declaración de juicio

<%
	request.setAttribute("number",1);
%>

<c:choose>
	<c:when test="${number==1}">星期一</c:when>
	<c:when test="${number==2}">星期二</c:when>
	<c:when test="${number==3}">星期三</c:when>
	<c:when test="${number==4}">星期四</c:when>
	<c:when test="${number==5}">星期五</c:when>
	<c:when test="${number==6}">星期六</c:when>
	<c:when test="${number==7}">星期日</c:when>
	
	<%--表示其他情况--%>
	<c:otherwise>数字输入有误</c:otherwise>
</c:choose>

c: forEach

Equivalente en Java para el bucle

Use un: recorrer el contenido del envase

<%
	List list=new ArrayList();
	list.add("111");
	list.add("222");
	list.add("333");
	request.setAttribute("list",list);
%>
<c:forEach items="${list}" var="num" varStatus="s">
	${num} == ${s.index} == ${s.count}<br>
</c:forEach>

El código se utiliza para atravesar los elementos de las expresiones del EL pageContext en cada elemento de la lista
los elementos de la expresión EL debe ser llenado porque el objeto sólo puede ser obtenida de la expresión EL
y cada cosas atravesada var en el número almacenado en la variable en

Se puede escribir en el código html, por tanto, muy conveniente

El resultado:

111 == 0 == 1
222 == 1 == 2
333 == 2 == 3

artículos atributos: contenedor de objetos
var propiedades: elementos variables temporales en el recipiente
varStatus propiedades: objeto de estado de ciclo
de las porciones propiedades de estado circulatorio del objeto:
índice: representa el ciclo actual es el primero de varios (es decir, el índice de índice actual) de 0
cuenta: el número representa el bucle de corriente a partir de las 1

El uso de dos: Repetir la operación se ha completado

<c:forEach begin="1" end="10" var="i" step="2" varStatus="s">
	${i} == ${s.index} == ${s.count}<br>
</c:forEach>

El número de código de pasos para el paso 10 se hace circular de 1 a comenzar atraviesa el final de cada iteración 2
var donde i representa un recorrido que los resultados serán almacenados en la variable i

Se puede escribir en el código html, por tanto, muy conveniente

El resultado:

1 == 1 == 1
3 == 3 == 2
5 == 5 == 3
7 == 7 == 4
9 == 9 == 5

comenzar atributo: valor inicial (que comprende)
End propiedades: valor final (contenidos)
var propiedades: corresponde a la variable i temporales
PASO propiedades: es decir, la cantidad de cada paso de disminución
varStatus propiedades: objeto de estado ciclo
circulatorio objeto de estado de propiedades de la parte:
index: representante del ciclo actual es el primero de varios (es decir, el subíndice índice actual) se inicia desde 0
COUNT: representa el número actual de ciclos de un comienzo


c: conjunto

uso:

<c:set var="name" value="Mike" scope="session"></c:set>

Declare que un objeto correspondiente al valor de nombre de atributo de Mike
y predeterminada a un dominio pageContext almacenado que
por supuesto también se puede utilizar para representar el ámbito de ésta alcance alojado domain = "sesión" se almacena en la tabla de sesión de dominio


etiquetas de acción JSP

1, jsp: include

<jsp:include page="test.jsp"></jsp:include>

Aquí se incluye de forma dinámica
se no contiene todos los elementos de una página de etiquetas utilizadas para dar salida a sus resultados operativos, sino para traer de salida

Jsp etapas de ejecución:
jsp => el archivo de Java => archivo de clase => ejecución
aquí se incluye el tiempo de ejecución

La etiqueta <% @ include%> diferencia:
<jsp:include page="<%=url %>"></jsp:include>se puede determinar en tiempo de ejecución que es variable
y <%@ include file="include.jsp" %>no tener que escribir la página específica no puede ser reemplazado con una variable


2, jsp: forward

<jsp:forward page="test.jsp"></jsp:forward >

Deberá solicitar el reenvío
equivalente arequest.getRequestDispatcher("test.jsp").forward(request,response)

Con una petición para reenviar el contenido de ésta página no se muestre también no realiza


3, JSP: param

<jsp:forward page="test.jsp">
	<jsp:param value="beijing" name="address">
</jsp:forward >

Que contiene una página o una página al saltar a unirse a los parámetros
utilizados request.getParameter("name属性的值")para obtener


Publicados 174 artículos originales · ganado elogios 5 · Vistas de 240.000 +

Supongo que te gusta

Origin blog.csdn.net/Piconjo/article/details/104919815
Recomendado
Clasificación