mybatis批量插入list

本文提供了一个SQL批量插入操作的示例,包括如何使用foreach循环进行动态参数填充,以及获取特定角色权限的代码逻辑。适用于数据库操作场景,如用户权限管理。
<insert id="addBatch" parameterType="java.util.List">
INSERT ALL
<foreach collection="list" item="item" index="index">
INTO T_ACCOUNT_WATER (
<include refid="selectAllColumnsSql" />
) VALUES (
getId_by_seq('SEQ_ACCOUNT_WATER'),
#{item.accountDate, jdbcType=CHAR},
#{item.accountSource, jdbcType=VARCHAR},
#{item.tallyType, jdbcType=VARCHAR},
#{item.expenseFlag, jdbcType=VARCHAR},
#{item.businessType, jdbcType=VARCHAR},
#{item.paymentOrderNo, jdbcType=VARCHAR},
#{item.orderId, jdbcType=VARCHAR},
#{item.voucherNo, jdbcType=VARCHAR},
#{item.drCrFlag, jdbcType=VARCHAR},
#{item.subjectNo, jdbcType=NUMERIC},
#{item.accountNo, jdbcType=NUMERIC},
#{item.drCrAmount, jdbcType=NUMERIC},
#{item.preDrAmount, jdbcType=NUMERIC},
#{item.preCrAmount, jdbcType=NUMERIC},
#{item.drAmount, jdbcType=NUMERIC},
#{item.crAmount, jdbcType=NUMERIC},
#{item.accountAmount, jdbcType=NUMERIC},
#{item.status, jdbcType=VARCHAR},
#{item.operatorId, jdbcType=VARCHAR},
sysdate,
sysdate
)
</foreach>
select 1 from dual
</insert>


<select id="getCodesByRole" resultMap="menuMap">
SELECT
DISTINCT mn.ID,
mn.NAME,
mn.PARENT_NO,
mn.URL,
mn.CODE,
mn.STYLE_CSS,
mn.STATUS,
mn.ORDER_BY
FROM T_MENU mn, T_ROLE_MENU rm WHERE mn.ID = rm.MENU_ID AND rm.ROLE_ID IN
<foreach item="item" collection="rList" open="(" separator="," close=")">
#{item.roleId}
</foreach>
ORDER BY ORDER_BY Asc
</select>
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值