在使用mybatis框架时,有时候我们需要在接口中写多个参数
在mybatis中,当我们在接口中写多个参数时,mybatis默认的会将接口中的参数定义为param1,param2...
现在:有两种方法
1、使用annotion中@Param注解,该注解是一个参数注解,使用如下代码
接口:
void updateIncomeByAgentId(@Param("agentIncome") AgentIncome agentIncome,@Param("agentId") Long agentId);
mapper.xml:
<update id="updateIncomeByAgentId" >
UPDATE t_income
<set>
sum_earnings=#{agentIncome.sumEarnings,jdbcType=DECIMAL},my_earnings= #{agentIncome.myEarnings,jdbcType=DECIMAL},
proportion= #{agentIncome.proportion,jdbcType=VARCHAR},update_date=#{agentIncome.updateDate,jdbcType=TIMESTAMP}
</set>
WHERE agent_id=#{agentId,jdbcType=BIGINT}
</update>
2、
接口:
void updateIncomeByAgentId(AgentIncome agentIncome, Long agentId);
mapper.xml:
<update id="updateIncomeByAgentId" >
UPDATE t_income
<set >
sum_earnings=#{agentIncome.sumEarnings,jdbcType=DECIMAL},my_earnings= #{agentIncome.myEarnings,jdbcType=DECIMAL},
proportion= #{agentIncome.proportion,jdbcType=VARCHAR},update_date=#{agentIncome.updateDate,jdbcType=TIMESTAMP}
</set>
WHERE agent_id=#{param2}
</update>
本文有诸多不良,待改进