六狼论坛

 找回密码
 立即注册

QQ登录

只需一步,快速开始

新浪微博账号登陆

只需一步,快速开始

搜索
查看: 19|回复: 0

logic标签的使用

[复制链接]

升级  90.33%

149

主题

149

主题

149

主题

举人

Rank: 3Rank: 3

积分
471
 楼主| 发表于 2013-2-7 16:39:08 | 显示全部楼层 |阅读模式
1,logic:empty与logic:present的区别
相同点:对于没有在page,request,session,application中定义或者是没有分配内存空间(null值)的变量,这两个标记处理的方法是一致的.
区别:空字符串""值,他们的处理就不一样了,logic:present 标记认为空字符串仍然是存在的,也就是说,只要是引用了一块内存空间的变量,logic:present 就会返回present ;而logic:empty则认为空字符串仍然为空,由此得出,在logic:empty看来,变量不仅仅要引用一块内存空间,而且该地址空间的值不能为空字符串,否则都认为该变量为空,都会返回empty

2,logic iterate输出map
  iterate标签处理map时好像只能做到以遍历的方式输出key和value,而不能指定输出某个key
  以下来源:http://www.blogjava.net/msmary/articles/153560.html
<span style="" />      标签本身不直接支持迭代输出,输出步骤:
Map-->Set-->Iterator-->Map.Entry-->key、value
        Map m = new HashMap();

        m.put("name","yourname");

        m.put("pass","yourpass");

        request.setAttribute("map",m);

<span style="" /><logic:iterate id="str" name="map" scope="request">

      <h2><bean:write name="str" property="key"/></h2>

      <h2><bean:write name="str" property="value"/></h2>

    </logic:iterate>

   <%

        /**

          在Map中保存多个Collection集合,该如何进行了输出?

        */

        List all = null;

        Map m = new HashMap();

       

        all = new ArrayList();

        all.add("msdn");

        all.add("url");

        m.put("name",all);

       

        all = new ArrayList();

        all.add("mole");

        all.add("msistri");

        m.put("info",all);

        //在一个Map中保存了多个集合,每个集合又包含了多个内容

        request.setAttribute("list",m);

    %>

    <logic:iterate id="src" name="list" scope="request" >

      <h2><bean:write name="src" property="key"/></h2>

        <logic:iterate id="ins" name="src" scope="page" property="value">

           <bean:write name="ins"/>

        </logic:iterate>

    </logic:iterate>

http://www.blogjava.net/ftqiuqiu/articles/205631.html
http://zengbo0710.iteye.com/blog/79405
http://blog.csdn.net/daryl715/archive/2007/03/12/1527098.aspx
您需要登录后才可以回帖 登录 | 立即注册 新浪微博账号登陆

本版积分规则

快速回复 返回顶部 返回列表