myibatis3 动态sql 查询

1.mysql  配置sql 文件

<!-- 动态sql查询 -->
 <select id="muti_list" parameterType="java.util.List" resultMap="id_Resources">
  select * from sys_resource s where s.id in
       <foreach collection="list" index="index" item="item" open="(" separator="," close=")">
        #{item}
      </foreach>
 
 </select>

2.程序实现

@Override
 public List mutiList(List list) throws Exception {
  // TODO Auto-generated method stub
  return this.getSqlSession().selectList(sql_pre+"muti_list", list);
 }

  调用ID 为muti_list 的sql

3.测试方法:

public void deleteByIdOne(){
  ResouceDao dao  = (ResouceDao)app.getBean("resouceDao");
  try {
  //System.out.println(dao.deleteById(216l));
   List list = new ArrayList();
   list.add(218);
   list.add(217);
   list.add(219);
   List l = dao.mutiList(list);
   for(Object res:l){
    System.out.println(res);
   }
  } catch (Exception e) {
   e.printStackTrace();
  }
 }

打印sql 语句:

[boce.auth.shiro.pojo.Resources.muti_list] - ==>  Preparing: select * from sys_resource s where s.id in ( ? , ? , ? ) 
2016-05-23 16:56:12,776 DEBUG [boce.auth.shiro.pojo.Resources.muti_list] - ==> Parameters: 218(Integer), 217(Integer), 219(Integer)
2016-05-23 16:56:12,799 DEBUG [boce.auth.shiro.pojo.Resources.muti_list] - <==      Total: 3

输出结果:

Resource{id=217, name='gaojiangp', type=menu, permission='view:view', parentId=0, parentIds='0/1', available=true}
Resource{id=218, name='gaojiangp', type=menu, permission='view:view', parentId=0, parentIds='0/1', available=true}
Resource{id=219, name='渤海', type=menu, permission='update:update', parentId=1, parentIds='0/1/', available=false}

猜你喜欢

转载自gjp014.iteye.com/blog/2300050
今日推荐