起因:
mybatis 传入set集合对象报
### Error updating database. Cause: java.lang.UnsupportedOperationException
### Cause: java.lang.UnsupportedOperationException
代码
/**
* 批量新增
* @param tbHuidous
* @return
*/
int insertTbHuidouRecordsBatch(Set<TbHuidou> tbHuidous);
<insert id="insertTbHuidouRecordsBatch" parameterType="java.util.Set" useGeneratedKeys="false">
insert into DZHMONITOR.tb_huidou_records(
rid,
hid,
create_time,
update_time,
is_delete
)
select DZHMONITOR.SEQ_HUIDOU_RECORDS.nextval as rid,A.* from(
<foreach collection="set" item="item" index="index"
separator="UNION ALL">
SELECT
#{item.hid,jdbcType=VARCHAR} as hid,sysdate as create_time,sysdate as update_time,0 as is_delete
FROM DUAL
</foreach>
) A
</insert>
解决办法在接口加入 @Param("set") 需要指定下参数名对应collection=“set”
/**
* 批量新增
* @param tbHuidous
* @return
*/
int insertTbHuidouRecordsBatch(@Param("set") Set<TbHuidou> tbHuidous);