天天看点

JavaWeb—EL/JSTL

EL表达式

  • 什么是EL表达式?

    EL(Express Lanuage)表达式可以嵌入在jsp页面内部,EL(Express Lanuage)表达式可以嵌入在jsp页面内部,EL出现的目的是要替代jsp页面中脚本的编写。

  • 作用:

    EL最主要的作用是获得四大域中的数据

    从四大域当中取数据:

pageContext ${pageScope.key}
request ${requestScope.key}
session ${sessionScope.key}
application ${applicationScope.key}

简写:

/*依次从pageContext域,request域,session域,application域中	获取属性
在某个域中获取后将不在向后寻找
*/
${EL表达式} 
EL从四个域中获得某个值<${key}
           
  • EL内置11对象
pageScope 获取JSP中pageScope域中的数据
requestScope 获取JSP中requestScope域中的数据
sessionScope 获取JSP中sessionScope域中的数据
applicationScope 获取JSP中applicationScope域中的数据
param request.getParameter()
paramValues rquest.getParameterValues()
header request.getHeader(name)
headerValues request.getHeaderValues()
initParam this.getServletContext().getInitParameter(name)
cookie request.getCookies()—cookie.getName()—cookie.getValue()
pageContext pageContext获得其他八大对象,获取当前项目的名称,${pageContext.request.contextPath}
  • EL执行表达式

    内部可以进行运算,只要有结果

${1+1}
${empty user}
${user==null?true:false}
           

JSTL

  • 什么是JSTL

    JSTL(JSP Standard Tag Library),JSP标准标签库,可以嵌入在jsp页面中使用标签的形式完成业务逻辑等功能,jstl出现的目的同el一样也是要代替jsp页面中的脚本代码。

  • JSTL标准标签库有5个子库
Core :核心库 http://java.sun.com/jsp/jstl/core 前缀:c
I18N:国际化库 http://java.sun.com/jsp/jstl/fmt 前缀:fmt
SQL http://java.sun.com/jsp/jstl/sql 前缀:sql
XML http://java.sun.com/jsp/jstl/xml 前缀:x
Functions http://java.sun.com/jsp/jstl/functions 前缀:fn
  • 引入标签库
  • if标签

    通过是结合EL表达式一起使用,EL从域中取数据,使用JSTL进行判断或者遍历

  • foreach标签

    第一种:普通循环

<c:forEach begin="0" end="5" var="i">
    ${i}<br/>
</c:forEach>
           

第二种:增加for循环

<c:forEach items="${list}" var="str">
    ${str}
</c:forEach>