zoukankan      html  css  js  c++  java
  • Mapper.xml--配置map<String, List<String>>输入

    Mapper.xml

    本文章关于mapper.xml中读取传入实体类中map<String, List> map这种入参,以及postman中如何模拟输入



    传入参数如下:

    Map<String, List> clientTag

    ​ 主要就是在foreach中套入一层foreach,其中clietnTag 是map名,index是map.key,后面一个foreach中item就是value中的list,随便定义什么都可,但是前面的map不能定义错,否则会找不到。


     <select id="" parameterType=""  resultMap="">
            select
        	* from a
        	
            <if test="clientTag != null and clientTag != ''">
                and a.external_userid in
                <foreach collection="clientTag" index="clientGroupId" item="ent" separator="union">
                    (select * from b
                    <if test="qrUserId != null and qrUserId != ''">
                        and b.qr_user_id = #{qrUserId, jdbcType=VARCHAR}
                    </if>
                    and b.tag_id in
                    <foreach collection="ent" item="clientTagId" separator="," open="(" close=")">
                        #{clientTagId, jdbcType=VARCHAR}
                    </foreach>
                    )
                </foreach>
            </if>
        </select>
    



    PostMan模拟传入:

    {
        "clientTag":{
            "1":["1", "2"]
            
        },
        "clientProduct":{
            "1":["1", "2"]
        }
    }
    




    JSONObject封装与使用

        @Test
        void testJsonObject(){
            //自定义JSON字符串
            String json = "{"name":"测试人员","age":24,"语录":[{"骚话1":"可以,不跟你多bb","骚话2":"表面兄弟"},{"骚话3":"卢本伟牛逼","骚话4":"给阿姨倒一杯卡布奇诺"}]}";
    
            JSONObject jsonObject = JSON.parseObject(json);
            System.out.println(jsonObject);
    
            //JsonArray
            JSONArray jsonArray = jsonObject.getJSONArray("语录");
            System.out.println(jsonArray);
    
            //取JsonArray中数值
            System.out.println(jsonArray.getJSONObject(0).getString("骚话2"));
            //拼接JsonObject(内包含jsonarray)
            List<String> a = Arrays.asList("2", "3");
    //        a.add("a");
            JSONObject jsonObject1 = new JSONObject();
            jsonObject1.put("a", "a");
            jsonObject1.put("b", Arrays.asList("2", "3"));  //不能add remove
            ArrayList<JSONObject> listA = new ArrayList<>();
            JSONObject imageDetail = new JSONObject();
            imageDetail.put("pic_url","1");
            JSONObject jsonObject2 = new JSONObject();
            jsonObject2.put("c", "c");
            listA.add(jsonObject2);
            jsonObject1.put("jsonarray", listA);
    
            System.out.println(jsonObject1.getJSONArray("jsonarray").getJSONObject(0).getString("c"));
    
            System.out.println(jsonObject1);
        }
    
    

    我曾七次鄙视自己的灵魂:
    第一次,当它本可进取时,却故作谦卑;
    第二次,当它在空虚时,用爱欲来填充;
    第三次,在困难和容易之间,它选择了容易;
    第四次,它犯了错,却借由别人也会犯错来宽慰自己;
    第五次,它自由软弱,却把它认为是生命的坚韧;
    第六次,当它鄙夷一张丑恶的嘴脸时,却不知那正是自己面具中的一副;
    第七次,它侧身于生活的污泥中,虽不甘心,却又畏首畏尾。
  • 相关阅读:
    设计模式-代理模式
    设计模式-桥接模式
    设计模式-组合模式
    设计模式-享元模式
    设计模式-适配器模式
    设计模式-装饰器模式
    设计模式-外观模式
    redis日志格式
    Linux下的文件切割和文件合并
    Windows server 服务器的端口突然远程连不上了,但是可以远程连接,怎么回事?
  • 原文地址:https://www.cnblogs.com/meditation5201314/p/14805762.html
Copyright © 2011-2022 走看看