sqlMap.xml配置文件中迭代一个集合的方式

比如:根据班级号查询学生的信息,参数是list

1、foreach的用法:【写法一】

<select id="getStudentListByClassId" resultMap="StudentResultList">

  select * form Student stu where stu.ClassId in

  <foreach collection="list" item="classList" open="(" separator="," close=")">

    #{classList}      [item是一个别名而已]

  </foreach>

</select>

2、criteria的用法:【写法二】

 <isNotEmpty property="criteria">
   <iterate property="criteria" conjunction="and" prepend="and"
 open="(" close=")">
    $criteria[].paramName$ $criteria[].arithmeticType$ #criteria[].paramValue#
 </iterate>

JAVA测试方法编写:(接口声明)

 public List<Student> getStudentListByClassId(List<String> classList);

测试代码,查询学生中在10000,10001这两个班级的学生:(具体实现方法)

  List<String> classList = new ArrayList<String>();

  classList.add("10000");

  classList.add("10001");

  List<Student> studentList = studentMapper.getStudentListByClassId(classList);

  for(Student stu:studentList){

    System.out.println(studentList.toString());

  }

时间: 2024-07-30 23:59:40

sqlMap.xml配置文件中迭代一个集合的方式的相关文章

@Required 注释应用于 bean 属性的 setter 方法,它表明受影响的 bean 属性在配置时必须放在 XML 配置文件中,否则容器就会抛出一个 BeanInitializationException 异常。

@Required 注释应用于 bean 属性的 setter 方法,它表明受影响的 bean 属性在配置时必须放在 XML 配置文件中,否则容器就会抛出一个 BeanInitializationException 异常. java public class Student { private Integer age; private String name; @Required public void setAge(Integer age) { this.age = age; } public

数据层spring-dao.xml配置文件中C3P0连接池配置详解

数据层spring-dao.xml配置文件中C3P0连接池配置详解 先放上两种配置文件bean的相关代码,文章下面会有详细的配置属性的讲解,大家可以自己添加配置和修改配置普通单一数据库连接池配置: <bean id="dataSource" class="com.mchange.v2.c3p0.ComboPooledDataSource"> <!-- 配置连接池属性 --> <property name="driverClas

怎样在log4j.xml配置文件中引入变量:小公司经验较多的我和阿里UC等大公司经验较多的Boss,一些技术交流和探讨

从最初学习使用log4j的时候,网上和书本上主要都是使用"log4j.properties"这种属性格式,配置日志.多年以来,一直使用这种格式,总的来说,简单.够用.    而有十多年经验的Boss,不建议使用properties格式配置,而是用xml格式配置.Boss之前在阿里(支付宝.淘宝).UC等大公司工作过. 我们有个很明显的不同:  我比较注重,简单.快速.Boss比较注重,规范.严谨. 我的观点:没有对与错,只有适用与不适用.每个人都是根据自己的经历和追求,做出的技术选择.

xml配置文件中常见的命名空间解释

1.1schema文档即xml schema document,schema文件的格式是.xsd(xml schema document的缩写xsd). 简单来说:schema就是对xml的进一步约束.一旦确定了web.xml schema的引用,就表示要参考该引用所在位置的schema定义和约束的规则,这些规则指定了该xml里: 1)只能出现约束里指定的元素和指定的属性2)某些元素的顺序的也就不可改变的3)谁有子元素,有多少个,顺序是怎样的4)元素和属性的类型,元素是否为空,是否包含文本,数据

获取web.xml配置文件中的初始化值

TestServletConfig.java package com.huawei.config; import java.io.IOException;import java.util.Enumeration; import javax.servlet.ServletConfig;import javax.servlet.ServletException;import javax.servlet.http.HttpServlet;import javax.servlet.http.HttpSe

Confluence 6 从一个 XML 备份中导入一个空间

有下面 2 中方法可以导入一个空间--通过上传一个文件,或者从你 Confluence 服务器上的一个目录中导入.上传文件仅仅是针对一个小站点的情况.为了取得最好的导入结果,我们推荐你从服务器上的目录上进行恢复. 希望删除和导入一个小空间: 进入  > 基本配置(General Configuration) > 备份和恢复(Backup and Restore). 选择 选择文件(Choose File)然后在本地磁盘上浏览空间导出文件. 取消选择 重构索引(Build Index)如果你希望

ibatis-一个类中包含List集合配置方式

1.创建项目和数据库    项目名称:ibatisdemo2    数据库名:ibatis    表:author        CREATE TABLE `author` (          `id` int(11) DEFAULT NULL,          `name` varchar(30) DEFAULT NULL,          `oid` int(11) DEFAULT NULL        ) ENGINE=InnoDB DEFAULT CHARSET=utf8;  

web.xml配置文件中&lt;async-supported&gt;true&lt;/async-supported&gt;报错的解决方案

为什么用到这个: ssh集成了cxf,当登录系统后,发现系统报错,控制台不断输出下面信息: 2016-05-05 11:05:06 - [http-bio-8080-exec-4] - WARN - ExceptionHandler:38 - Error: java.lang.IllegalStateException: A filter or servlet of the current chain does not support asynchronous operations.2016-0

C#中判断一个集合是另外一个集合的子集

有这样的两个集合: string[] bigArr = new string[] { "a", "b", "c" };string[] smallArr = new string[] { "a", "b"}; 现在需要判断smallArr是否是bigArr的子集.只要拿着bigArray和smallArr比较,求差集,如果差集的个数大于0,就说明smallArr是bigArr的子集. //在大集合的基础上,