欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

EL表达式方法的使用

程序员文章站 2022-04-07 19:14:00
...
EL是JSP2.0(JavaEE1.4)规范的技术,支持需要Servlet2.4/JSP2.0技术的web服务器

Tomcat服务器不能使用EL表达式解决方法:
  1. 升级Tomcat6以上
  2. JSP中加入<%@ page isELIgnored="false" %>

  • 取对象:${a.b.c}
  • 取列表:${a.list[0]}
  • 取map:${map.key}

empty运算符:

<Myc:if test="${empty requestScope.sentenceList}">
        <h1>该页无数据记录或输入的页码有误!</h1>
    </Myc:if>


二元表达式:

${user!=null?user.name:""}//user不为空取值为user.name,如果为空取值“”


隐含对象名称:
  1. pageContext
  2. pageScope
  3. requestScope
  4. sessionScope
  5. applicationScope
  6. param  (表示一个保存了所有请求参数的Map对象)
  7. paramValues  (对于某个请求参数,返回的是一个String[])
  8. header (保存所有http请求头字段的Map对象)
  9. cookie
  10. initParam (保存所有web应用初始化参数的map)

注意事项:
  • headerValues取值,若头里面有“-”,则要headerValues["Accept-Encoding"]
  • cookie取值,${cookie.key}取得是cookie对象,若访问cookie的名称和值,需要${cookie.key.name}或${cookie.key,value}

页面中使用JSTL定义的EL函数:
<%taglib uri="http://java.sun.com/jsp/jstl/functions" prefix="fn"%>
fn:toLowerCase("xxx")//转小写
fn:toUpperCase("xxx")//转大写
fn:trim("xxx")//去掉字符串首尾空格
fn:length("xxx")
fn:split("xxx.yyy.zzz",".")[1]//返回值为字符串yyy
fn:join({"aaa","bbb","ccc"},".")//"aaa.bbb.ccc"
fn:indexOf("xxxaxxx","a")//结果为3,不包含-1,第二个字符串为空0
fn:contains(string,substring)//boolean
fn:containsIgnoreCase()//忽略大小写
fn:startsWith("axxxxxxx","b")//false
fn:endWith()
fn:replace("www it315 org"," ",".")//www.it315.org
fn:substrign("abcdefg",2,4)//cde
fn:substringAfter("www.baidu.com",".")//"baidu.com"
fn:substringBefore()

环境:
  • jstl.jar
  • standard.jar

标签库:
  • c:核心标签库
  • fmt:国际化标签
  • sql:数据库标签
  • xml:
  • el:JSTL函数(EL函数)