zoukankan      html  css  js  c++  java
  • mybatis中的智能标签之二

    智能标签foreach-Array, 智能标签foreach-List数据组,智能标签 foreach list自定义类型

    接口:
    /**
    * 智能标签foreach-Array
    * @param num
    * @return
    */
    public List<Student> findByForeachArray(int[] num);

    /**
    * 智能标签foreach-List
    * @param list
    * @return
    */
    public List<Student> findByForeachList(List<Integer> list);


    /**
    * 智能标签 foreach list自定义类型
    * @param list
    * @return
    */
    public List<Student> findByForeachListStudent(List<Student> list);





    xml文件(小配置)
    <!--智能标签foreach-array-->
    <select id="findByForeachArray" resultType="student">
    SELECT *from Student
    <where>
    <if test="array.length>0">
    id in
    <foreach collection="array" open="(" close=")" separator="," item="id">
    #{id}
    </foreach>
    </if>
    </where>
    </select>

    <!--智能标签foreach-list数组-->
    <select id="findByForeachList" resultType="student">
    SELECT *from Student
    <where>
    <if test="list.size>0">
    id in
    <foreach collection="list" open="(" close=")" separator="," item="id">
    #{id}
    </foreach>
    </if>
    </where>
    </select>

    <!--智能标签foreach-list自定义类型-->
    <select id="findByForeachListStudent" resultType="student">
    SELECT *from Student
    <where>
    <if test="list.size>0">
    id in
    <foreach collection="list" open="(" close=")" separator="," item="it">
    #{it.id}
    </foreach>
    </if>
    </where>
    </select>





    测试类:

    /**
    * 智能标签foreach-array
    */
    @Test
    public void findByForeachArray(){
    SqlSession session = MyBatisUtil.getSession();
    IStudentDAO mapper = session.getMapper(IStudentDAO.class);
    int[] num={2,3,4};
    List<Student> list = mapper.findByForeachArray(num);
    for (Student item:list){
    System.out.println(item.getName());
    }
    session.commit();
    session.close();
    }




    /**
    * 智能标签foreach-list数组
    */
    @Test
    public void findByForeachList(){
    SqlSession session = MyBatisUtil.getSession();
    IStudentDAO mapper = session.getMapper(IStudentDAO.class);
    List<Integer> list=new ArrayList<Integer>();
    list.add(2);
    list.add(9);
    List<Student> lists = mapper.findByForeachList(list);
    for (Student item:lists){
    System.out.println(item.getName());
    }
    session.commit();
    session.close();
    }




    /**
    * 智能标签foreach-list自定义类型
    */
    @Test
    public void findByForeachListStudent(){
    SqlSession session = MyBatisUtil.getSession();
    IStudentDAO mapper = session.getMapper(IStudentDAO.class);
    List<Student> list=new ArrayList<Student>();
    Student student=new Student();
    student.setId(2);
    Student students=new Student();
    students.setId(9);
    list.add(student);
    list.add(students);
    List<Student> lists = mapper.findByForeachListStudent(list);
    for (Student item:lists){
    System.out.println(item.getName());
    }
    session.commit();
    session.close();
    }
     
  • 相关阅读:
    在新浪爱问上看到的有趣名字都记下来
    FastReports_4.14.1 _Cliff手动安装
    计算机算法对做事效率的启发(既要高强度猛攻,也要细水长流)
    有趣的数组
    listView 分页加载数据
    如何隐藏Cognos Viewer
    使用DBUnit实现对数据库的测试
    通过Jasmine和Guard自动测试JavaScript
    for惠普2013实习生
    栈的顺序存储,所谓的顺序栈
  • 原文地址:https://www.cnblogs.com/sujulin/p/7588772.html
Copyright © 2011-2022 走看看