EL表达式+JSTL

0717.png

cookie的保存和获得

保存


    <%
        Cookie c1 = new Cookie("uname","abcd");
        c1.setMaxAge(5*60);
        
        Cookie c2 = new Cookie("uinfo","xyz");
        c2.setMaxAge(5*60);
        
        //保存cookie
        response.addCookie(c1);
        response.addCookie(c2);
    %>

获取

    
    //jsp获取
    <%
        String v1 = "";
        String v2 = "";
        
        Cookie[] cks = request.getCookies();
        for(int i = 0 ;i < cks.length ;i++){
            if("uname".equals( cks[i].getName())) v1 = cks[i].getValue();
            if("uinfo".equals( cks[i].getName())) v2 = cks[i].getValue();
        }
        
    %>
    <br/><br/>
    ck1:<%=v1 %><br/>
    ck2:<%=v2 %><br/>
    <hr/>
    EL表达式获取
    ck1 : ${cookie.uname.value }<br/>
    ck2 : ${cookie.uinfo.value }<br/>

获取header


    //jsp
    <%
        Enumeration keys = request.getHeaderNames();
        while( keys.hasMoreElements() ){
            String k = (String)keys.nextElement();
            out.print("<br/>"+ k +"::"+request.getHeader( k ));
        }
    %>
    <hr/><hr/>
    1.<%=request.getHeader("user-agent") %><br/>
    2.<%=request.getHeader("accept-language") %><br/>
    <hr/><hr/>
    EL表达式
    1.${header["user-agent"] }<br/>
    2.${header["accept-language"] }<br/>

其它符号


    <%
        pageContext.setAttribute("fff", new Users(300,"周瑜",1.82));
        pageContext.setAttribute("sss", new Users(301,"太史慈",1.96));
    %>
         个子高: ${fff.uheight > sss.uheight ? fff.uname : sss.uname }<br/>
         个子高2: ${fff.uheight gt sss.uheight ? fff.uname : sss.uname }<br/><br/>
         
         名字相等吗 : ${ fff.uname == sss.uname ? "" :"不" }相等<br/>
         名字相等吗2 : ${ fff.uname eq sss.uname ? "" :"不" }相等<br/><br/>
    
         相等吗 : ${ fff.uname != sss.uname ? "不" :"" }是一个人<br/>     
         相等吗 : ${ fff.uname ne sss.uname ? "不" :"" }是一个人<br/><br/> 
         
    <%
        pageContext.setAttribute("ttt", "asdfasdf");
        pageContext.setAttribute("qqq", "");
    %>     
          存在或为空1: ttt ${ empty ttt ? "无":"有" }数据<br/> 
          存在或为空2: qqq ${ empty qqq ? "无":"有" }数据<br/> <%-- qqq!=null && qqq.size>0 --%>
          存在或为空3: www ${ empty www ? "无":"有" }数据<br/>

JSTL

JSP Standard Tag Library

jsp引入

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

定义


    <c:set var="a1" value="aabbcc"/>
    <c:set var="a2" value="xx<font color='red'>yy</font>zz"/>
    <c:set var="a2" value="${upd}" scope="request"/>
    1.${a1}<br/>
    2.${a2}<br/>
    3.${requestScope.a2}<br/>

输出



    输出:<br/>      
    0.<c:out value="a1"/><br/>
    1.<c:out value="${a1}"/><br/>
    2.<c:out value="${a2}" escapeXml="false"/><br/>
    3.<c:out value="${a2}"/><br/>
    3.<c:out value="${requestScope.a2.uname}"/>--${requestScope.a2.uname}<br/>

删除


    删除:<br/>
    <c:remove var="a2"  scope="page"/>
    1.${a1}<br/>
    2.${a2}<br/>
    3.${requestScope.a2}<br/>

异常


    异常:<br/> 
    <c:catch var="haha"> 
     1. ${requestScope.a2.uname1} 
    </c:catch>

静态/动态引入


    静态/动态引入:<br/> <!-- jsp代码拷贝到引入的位置     一起翻译成 java文件,编译成class,运行返回html代码 -->
                     <!-- 各个jsp生成的html代码拷贝到引入的位置  -->       
    <table width="200" height="150" border="1">
        <tr>
            <td><%@ include file="/myDiv1.jsp" %></td><!--静态引入-->
            <td>2</td>
            <td>3</td>
        </tr>   
        <tr>
            <td><jsp:include page="/myDiv1.jsp"/></td><!--动态引入-->
            <td>
                <jsp:include page="/myDiv1.jsp">
                    <jsp:param value="100" name="tp"/><!--动态引入-->
                </jsp:include>  
            </td>
            <td>6</td>
        </tr>
        <tr>
            <td>7</td>
            <td><c:import url="/myDiv1.jsp"/></td><!--动态引入-->
            <td><c:import url="/myDiv1.jsp">
                    <c:param name="tp">210</c:param>
                </c:import> 
            </td>
        </tr>
    </table>

路径


    路径:
    <c:url var="aa" value="http://www.baidu.com"/>
    <c:url var="bb" value="http://www.baidu.com">
        <c:param name="id">50</c:param>
        <c:param name="id" value="${a1}"></c:param>
    </c:url>
    
    ${aa}--${bb}
003.PNG

if



    <%  
    
        pageContext.setAttribute("upd", new Users(400,"陈宫",173));
    
        List<Users> ulist =new ArrayList<Users>();
        ulist.add( new Users(100,"诸葛亮",1.84));
        ulist.add( new Users(101,"关羽",2.12));
        ulist.add( new Users(102,"张飞",1.98));
        ulist.add( new Users(103,"刘备",1.74));
        
        pageContext.setAttribute("fff", ulist);
    %>
    if:<br/>
    <c:if test="${ empty upd }" var="ret">
        没有要修改的对象
    </c:if>
    <c:if test="${!ret}">
        有有有
    </c:if>

swith


    swith:<br/>
    <c:choose>
        <c:when test="${upd.uheight le 170}">小兵</c:when>
        <c:when test="${upd.uheight le 180}">吾长</c:when>
        <c:otherwise>大将</c:otherwise>
    </c:choose>

for



    for:<br/>
    <c:forEach items="${fff}" var="f" varStatus="st"><!-- for( Users f : fff) -->
        ${st.index}--${f.uname}--${f.uheight}<br/>
    </c:forEach>
    <c:forTokens items="111,222,333,444#555,666" delims="," var="s">
        ${s}<br/>
    </c:forTokens>
    <c:forEach begin="1" end="10" step="2" var="x"> <!-- for( int i = 1 ; i <=10 ; i+=2) -->
        ${x}
    </c:forEach>
    
004.PNG

fmt标签

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



        <%
            Date d1 = new Date();
            pageContext.setAttribute("ttt", d1);
            
            SimpleDateFormat fmt = new SimpleDateFormat("yyyy年MM月dd日 hh时mm分ss秒SSS毫秒  E");
        %>
       1.<%=d1 %><br/>
       2.<%=fmt.format(d1) %><br/>
       <br/><br/>
       3.<m:formatDate value="${ttt}" pattern="yyyy年MM月dd日 hh时mm分ss秒SSS毫秒  E"/> 
       
       <hr/>
       4.<m:formatNumber value="32454245.24545" pattern=",###.####"/><br/>
       5.<m:formatNumber value="32454245.24" pattern=",###.0000"/><br/>
       6.<m:formatNumber value="1.64" pattern=",###.0000"/><br/>
       7.<m:formatNumber value="1.64" pattern=",000.0000"/><br/>
005.PNG

functions标签



    <%
        pageContext.setAttribute("xyz", "aabbccdd");
    %>
    1.${fn:substring(xyz,2,4)   }<br/>
    2.${fn:substring(xyz,4,-1)  }<br/>
    3.${fn:replace(xyz,"bc","海洋") }<br/>
    4.${fn:toUpperCase(xyz)     }
006.PNG
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 215,076评论 6 497
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 91,658评论 3 389
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 160,732评论 0 350
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 57,493评论 1 288
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 66,591评论 6 386
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 50,598评论 1 293
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 39,601评论 3 415
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 38,348评论 0 270
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 44,797评论 1 307
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 37,114评论 2 330
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 39,278评论 1 344
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 34,953评论 5 339
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 40,585评论 3 322
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 31,202评论 0 21
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 32,442评论 1 268
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 47,180评论 2 367
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 44,139评论 2 352

推荐阅读更多精彩内容