后台:

@RequestMapping("/cmci/v_divide_check_add.do")
    public String toDivideCheckAdd(HttpServletRequest request,ModelMap model,Long ids,String operId){
        List<MsStaticDataDef> status = mssddService.queryStaticDataDefByDddCode(StaticDataDef.CM_ASSESSMENT_TYPE.getCode());
        CmCheckCycleDef cycleDef = scService.get().getCcdId();
        List<CmCheckCatalogInfo> catalogInfo = ccciService.findByCcdId(cycleDef.getCcdId());
        //所有考核类别list
        List<MsStaticDataDef> catalog = new ArrayList<MsStaticDataDef>();
        for (CmCheckCatalogInfo cmCheckCatalogInfo : catalogInfo) {
            catalog.add(cmCheckCatalogInfo.getId().getCatalog());
            System.out.println(cmCheckCatalogInfo.getId().getCatalog().getSddId());
        }
        //已经存在关联(CmMmiCmiCtgRel)
        List<CmMmiCmiCtgRel> cccrList = cccrService.getMccrByCcdIdAndMciId(cycleDef.getCcdId(), ids);
        if(cccrList!=null && cccrList.size()>0){
            Map<String, CmMmiCmiCtgRel> map = new HashMap<String, CmMmiCmiCtgRel>();
            for(CmMmiCmiCtgRel cr : cccrList){
                System.out.println(cr.getCatalog().getSddId());
                map.put(cr.getCatalog().getSddId(), cr);
            }
            model.addAttribute("map", map);
        }
        model.addAttribute("catalog", catalog);
        model.addAttribute("status", status);
        model.addAttribute("cycleDef", cycleDef);
        model.addAttribute("ccdId", scService.get().getCcdId().getCcdId());
        model.addAttribute("mciId", ids);
        model.addAttribute("operId", operId);
        return "cm/cmci/divide_check_add";
    }

前台:

<@e.form id="jvForm" action="o_divide_check_save.do">
                <@e.hidden name="ccdId" value="${ccdId!}" />
                <@e.hidden name="mciId" value="${mciId!}" />
                <@e.hidden name="operId" value="${operId!}" />
                <#list catalog as ca >
                    <#if map?? &&(map[ca.sddId])?exists && (ca.sddId == map[ca.sddId].catalog.sddId)>
                        <@e.hidden name="checkMmi" value="${(map[ca.sddId].cmiId.cmiId)!}" id="v_${(ca.sddId)!}"/>
                        <@e.text label="${(ca.sddName)!}" readonly="readonly" id="n_${(ca.sddId)!}"  value="${(map[ca.sddId].cmiId.cmiMechanismName)!}" />
                        <a onclick="show_cids('v_${(ca.sddId)!}','n_${(ca.sddId)!}','${(ca.sddId)!}')" href="javascript:;" style="left: 525px;margin-top:-33px;position: absolute;">
                            <img border="0" src="${base}/res/pra/img/find.png">
                        </a>
                        <@e.hidden name="checkType" value="${(ca.sddId)!}" />
                        <@e.hidden name="refId" value="${(map[ca.sddId].mccrId)!}" />
                    <#else>
                        <@e.hidden name="checkMmi" value="" id="v_${(ca.sddId)!}"/>
                        <@e.text label="${(ca.sddName)!}" readonly="readonly" id="n_${(ca.sddId)!}" />
                        <a onclick="show_cids('v_${(ca.sddId)!}','n_${(ca.sddId)!}','${(ca.sddId)!}')" href="javascript:;" style="left: 525px;margin-top:-33px;position: absolute;">
                            <img border="0" src="${base}/res/pra/img/find.png">
                        </a>
                        <@e.hidden name="checkType" value="${(ca.sddId)!}" />
                        <@e.hidden name="refId" value="" />
                    </#if>
                </#list>
            <@cms_perm url="#" >
            <@e.submit value="确认保存"/>
            </@cms_perm> &nbsp; <@e.reset code="global.reset"/>
            </@e.form>

经验之巧妙的应用Map的更多相关文章

  1. 编程经验点滴----巧妙解决 Oracle NClob 读写问题

    最近一个新项目中,尝试在 Oracle 数据库中使用 NCLOB 来保存大的 xml 字符串. 在代码自动生成工具(通过 JDBC 驱动程序,读数据库表结构,自动生成对应的 java 代码,包含增加. ...

  2. HDU - 5887:Herbs Gathering (map优化超大背包)

    Collecting one's own plants for use as herbal medicines is perhaps one of the most self-empowering t ...

  3. 深入浅出数据仓库中SQL性能优化之Hive篇

    转自:http://www.csdn.net/article/2015-01-13/2823530 一个Hive查询生成多个Map Reduce Job,一个Map Reduce Job又有Map,R ...

  4. Hive任务优化(1)

    一个Hive查询生成多个Map Reduce Job,一个Map Reduce Job又有Map,Reduce,Spill,Shuffle,Sort等多个阶段,所以针对Hive查询的优化可以大致分为针 ...

  5. 工厂模式如何返回Spring的Bean

    工厂返回的可以是一个具体的对象,比如造一辆车,可以返回一个自行车对象,或者汽车对象. 但是在Spring 中需要工厂返回一个具体的Service,这就是一个抽象工厂了 一种方法是反射,个人觉得这种方式 ...

  6. hivesql优化的深入解析

    转载:https://www.csdn.net/article/2015-01-13/2823530 一个Hive查询生成多个Map Reduce Job,一个Map Reduce Job又有Map, ...

  7. Python 基础:分分钟入门

    Python和Pythonic Python是一门计算机语言(这不是废话么),简单易学,上手容易,深入有一定困难.为了逼格,还是给你们堆一些名词吧:动态语言.解释型.网络爬虫.数据处理.机器学习.We ...

  8. 【论文笔记】Domain Adaptation via Transfer Component Analysis

    论文题目:<Domain Adaptation via Transfer Component Analysis> 论文作者:Sinno Jialin Pan, Ivor W. Tsang, ...

  9. SCI投稿过程总结、投稿状态解析、拒稿后对策及接受后期相关问答

    SCI投稿过程总结.投稿状态解析.拒稿后对策及接受后期相关问答   http://muchong.com/t-9174366-1 SCI投稿过程总结.投稿状态解析.拒稿后处理对策及接受后期相关问答综合 ...

随机推荐

  1. eclipse中的输入提示怎么设置

    对于大多数的开发人员来说,打代码是一件非常繁琐的事情,eclipse中为我们提供了自动提示的功能,但是默认的提示只有当我们输入小数点后才能出现提示框,那么我们如何设置eclipse,能够让它为我们提示 ...

  2. RedMine项目管理系统安装问题(Linux版一键安装包)

    安装环境 操作环境:VMware下安装的Parrot Security OS 系统 使用软件:bitnami-redmine---linux-x64-installer.run 问题描述: 安装步骤与 ...

  3. [译]15个关于Chrome的开发必备小技巧

    谷歌Chrome,是当前最流行且被众多web开发人员使用的浏览器.最快六周就更新发布一次以及伴随着它不断强大的开发组件,使得Chrome成为你必备的开发工具.例如,在线编辑CSS,console以及d ...

  4. Vim常用命令手册

    这两年工作基本都是用vim,用习惯发现到哪都离不开这玩意. 退出编辑器 :w 将缓冲区写入文件,即保存修改:wq 保存修改并退出:x 保存修改并退出:q 退出,如果对缓冲区进行过修改,则会提示:q! ...

  5. 【HDOJ】3601 Coach Yehr’s punishment

    RMQ+dp+二分.最好还是离散化一下再处理,通过dp求得每个位置的上一次出现的位置pre数组,从而求得不重复的长度len.然后RMQ可以预处理区间的最大值,pre是个单调非递减数列.每次查询时,二分 ...

  6. git bash中带空格的文件夹以及文件的处理

    空格用'\ '表示,输入的时候,是不需要单引号的 total 338drwxr-xr-x 9 Administ Administ 4096 Aug 24 23:53 HDTHelperdrwxr-xr ...

  7. 职责链实现的apache.chain使用

    其实职责链在老早就使用过了,以前在HW给Vodafone做金融项目的时候,使用职责链完成交易步骤,那时觉得这东西真好用,可以直接通过配置决定业务流程,现在终于有机会实践一下.       项目地址:h ...

  8. poj2229

    很不错的一道题,这里提供两种方法: 方法1:递推: 易知当n为奇数时,f[n]=f[n-1] (n-1的所有方案前面添1,并且没有新的方案): 重点是n为偶数的时候,则拆分方案中,要么有偶数个1,要么 ...

  9. 8款JS框架比较

    Dojo     Dojo 是目前最为强大的JS框架,它在自己的 Wiki 上给自己下了一个定义,Dojo 是一个用 JavaScript 编写的开源的DHTML工具箱.Dojo 很想做一个“大一统” ...

  10. C# 向共享文件夹上传及下载文件

    //第一步建立共享链接 public static bool connectState(string path, string userName, string passWord) { bool Fl ...