Notas de estudio 6: JSP y JSTL (en)

Expresión EL

Antes de usar, agregue un archivo de encabezado <% @ page isELIgnored = "false"%> para habilitar las expresiones EL. La versión alta de Web.XML se establece de forma predeterminada en false, lo que significa que está habilitada, y la versión baja se establece de forma predeterminada en true para ser agregada manualmente. .

Sintaxis de expresión EL

La expresión EL es para facilitar la escritura de JSP. Proporciona una forma de simplificar expresiones en JSP, haciendo que el código JSP sea más simplificado.

语法结构非常简单:${表达式}

Las expresiones EL operan sobre datos en objetos de dominio y no pueden operar sobre variables locales.

Cuando necesite especificar la búsqueda de datos de un objeto de dominio específico, puede utilizar los objetos espaciales correspondientes correspondientes a los cuatro objetos de dominio, que son pageScope, requestScope, sessionScope y applicationScope.

${pageScope.属性名}
${requestScope.属性名}
${sessionScope.属性名}
${applicationScope.属性名}

Si no especifica un objeto de dominio, el método de búsqueda predeterminado de EL es buscar de pequeño a grande, hasta encontrarlo. Cuando se busca el objeto de dominio y aún no se encuentra, se devuelve una cadena vacía "".

Obtenga la ruta del proyecto a través de la expresión EL

Generalmente a través de $ (pageContext.request.contextPath) para obtener dinámicamente la ruta del nombre del proyecto similar a request.getContextPath ();

Obtener colección de lista

<%
    数据源
    List<String> list = new ArrayList<String>();
    list.add("aaa");
    list.add("bbb");
    request.setAttribute("list",list);
%>
<%--
    用EL表达式获取list中指定下标的数据
    
    ${
    
    list[下标]}

    获取集合的长度
    ${
    
    list.size()}

    注意:这里list代表的是域对象中的变量名,也就是集合名
--%>

Obtener mapa

<%
	数据源
	
    HashMap<String, String> map = new HashMap<>();
    map.put("name","张三");
    map.put("name2","李四");
    request.setAttribute("map",map);
%>
<%--
    通过EL表达式获取Map中指定值
    
    ${
    
    map["key"]}  或 ${
    
    map.key}
    
    注:这里map代表的是域对象中的变量名
--%>

Obtener el objeto javaBean

¡El campo de atributo en javaBean debe tener un método get para obtenerlo! , Nota: Al obtener el valor, utilice el objeto de dominio directamente, el nombre del atributo es suficiente y no es necesario llamar al método get.

	获取对象的方式
	${
    
    对象名} 
	获取对象中的属性
	${
    
    对象名.属性名}

Determine si el objeto de dominio está vacío

判断对象为空吗
${
    
    empty 域对象名}
为空则返回true;
不为空则返回false;
如果为String类型的域对象,那么空字符串也返回true
如果为集合类型的域对象,那么长度小于1,也就是没有长度的集合也返回true

Supongo que te gusta

Origin blog.csdn.net/qq_40492885/article/details/115289515
Recomendado
Clasificación