1、插入date类型的字段
直接在值的后面加上jdbcType=DATE即可
如#{time,jdbcType=DATE},
如果不想丢失精度(时分秒)
则将DATE改成TIMESTAMP
2、注解方式批量插入
@Insert("<script>
insert into 表名(字段1,字段2.,...) values
<foreach item='item' index='index' collection='list' separator=','>
(#{item.属性1},#{item.属性2,...})
</foreach>
</script>")
int insertCollectList(@Param(value="list")List list);
注意:oracle数据库这个insert语句是无效的,应该使用下面的
insert into 表名(字段1,字段2.,...)
<foreach item='item' index='index' collection='list' separator='union all'>
select #{item.属性1},#{item.属性2,...} from dual
</foreach>
foreach标签的使用
collection: 指定要遍历的集合(三种情况 list,array,map) !!!!在这种使用注解sql的情况下,这里请填写mapper方法中集合的名称
item:将当前遍历出的元素赋值给指定的变量 (相当于for循环中的i)
separator:每个元素之间的分隔符
open:遍历出所有结果拼接一个开始的字符
close:遍历出所有结果拼接一个结束的字符
index:索引。遍历list的时候是index就是索引,item就是当前值
#{变量名}就能取出变量的值也就是当前遍历出的元素