一、EL:表达式

1、取值的语法:
    对象.属性名
    对象['属性名'] 括号里面可以使用变量
2、EL 中的隐匿对象:
从attribute里面获取值
    pagetContext<request<session<application
    pageScope:requestScope:sessionScope:appliecationScope
3、从请求URL的参数后缀取值:
    param/paramValues
4、操作符
 l g e 的组合
      le ge gt lt ne
 mod div
 empty判断对象为空
二、 JSTL首先需要导入Apache的二个jar包,jstl.jar和standar.jar

在这个当中用得最多的就只有三个标签

1、通用标签

   <fieldset>
        <legend>通用标签</legend>
        <c:set var="s" value="hello" scope="request" />
        <%--     <%
            String s = "hello";
            request.setAttribute("s", "hello");
        %> 与上面的set功能等价--%>
        <c:out value="${ s}" />
        <c:out value="xxxxxxxx" />
        <!-- 是直接输出字符串里面的值 -->
        <!-- 可以直接用EL表达示 -->
        ${s }
    </fieldset>

 

2、条件标签

    <fieldset>
        <legend>条件标签</legend>
        <c:set var="gender" value="3" scope="request" />
        <c:if test="${gender==0}">female</c:if>
        <c:if test="${gender==1}">male</c:if>

        <hr>
            <!-- 当表达式为true,才会显示body -->
        <c:choose>
       
            <c:when test="${gender==0}">female</c:when>
            <c:when test="${gender==1}">male</c:when>
            <c:otherwise>人妖</c:otherwise>
        </c:choose>

    </fieldset>

 

3、迭代标签

<fieldset>
        <legend>迭代标签</legend><!-- p就list对象 -->
            <c:forEach var = "p" items="${list}" varStatus="st">
                <h1>${p.name}</h1>
            </c:forEach>
            <hr>
            <!--  分隔Items delims="分隔符"-->
            <c:forTokens items="jack,java,mary;vickyi|hack" delims=",;|" var="str">
           
            <h2>${str }</h2>
            </c:forTokens>
    </fieldset>