zoukankan      html  css  js  c++  java
  • Mybatis中的动态查询

    1:当传入的参数为 对象类型时 的动态语句

    查询:

    <?xml version="1.0" encoding="UTF-8" ?>
    <!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd" >
    
    <mapper namespace="com.cn.entity.User.mybatisUserMapper2" >
    
    
         <!--  动态查询   当if条件成立是就按照条件查询,不成立时就查询所有 -->
        <select id="find" resultType="user" parameterType="user">
            select * from user
            <where>
              <if test="id !='' and username !=null">
                  and id = #{id} and username = #{username}
              </if>
            </where>
        </select>
    
    </mapper>

    测试:

    SqlSession sqlSession = MyBatisUtil.getSqlSession();
    User u = new User();
    u.setId(2);
    u.setAddress("湖南");
    u.setBirthday(new Date());
    u.setSex("女");
    u.setUsername("rose");
    List<User> list1 = sqlSession.selectList("com.cn.entity.User.mybatisUserMapper2.find", u);

    2:当传入的参数为 Map 的动态语句

    查询:

    测试:

    更新:

    3:当传入的参数为 List/ 数组 的动态语句

    删除:

        <!-- 动态删除 传入的参数为list 或者 数组   -->
        <delete id="del" parameterType="list">
            delete  from user where id in
    
            <!--collection="list"  这个list 是指的list类型 不是写参数的名字 一定要注意  如果是数组的话就写成collection="arry"-->
            <foreach collection="list" item="ids" close=")" open="(" separator=",">
                ${ids}  <!--${}进行取值  或者 #{} 取值-->
            </foreach>
    
        </delete>

    测试:

           List  list2 = new ArrayList<>();
           list2.add(1);
           list2.add(2);
           sqlSession.delete("com.cn.entity.User.mybatisUserMapper2.del", list2);
           sqlSession.commit(); //一定要进行事务的提交

    插入:

    坚持
  • 相关阅读:
    洛谷P1600 天天爱跑步——树上差分
    洛谷P1155 双栈排序——思路题
    洛谷P2827 蚯蚓——思路题
    bzoj2763 [JLOI2011]飞行路线——分层图
    洛谷P2831 愤怒的小鸟——贪心?状压DP
    洛谷P1514 引水入城——dfs
    bzoj1854 [Scoi2010]游戏——匈牙利算法
    hdu1814 Peaceful Commission——2-SAT
    浙江理工大学: 铺地砖(3922)
    最大素因子(快)
  • 原文地址:https://www.cnblogs.com/gaoSJ/p/13044017.html
Copyright © 2011-2022 走看看