mybaits 多个参数传入用#{0,1,....}或者@Param注释

来源:互联网 发布:人工智能假肢多少钱 编辑:程序博客网 时间:2024/06/05 04:41

Dao层定义如下:

public interface CompanyMemberRelReadDao {


CompanyMemberRel getCompanyMemberRel(Integer companyId, Integer memberId);

这样子的话,sql的配置如下:

<mapper namespace="com.tsb.dao.read.CompanyMemberRelReadDao">

<resultMap id="companyMemberRelResult" type="CompanyMemberRel">

</resultMap>


<select id="getCompanyMemberRel" resultMap="companyMemberRelResult">

select * from company_member_rel where companyId = #{companyId}

and memberId = #{memberId}

</select>

</mapper> 

这样mybaits是找不到 companyId,也就是识别不了 #{companyId}

写成如下才可以

<mapper namespace="com.tsb.dao.read.CompanyMemberRelReadDao">

<resultMap id="companyMemberRelResult" type="CompanyMemberRel">

</resultMap>


<select id="getCompanyMemberRel" resultMap="companyMemberRelResult">

select * from company_member_rel where companyId =#{0}

 and memberId = #{1}

</select>

</mapper> 


如果要写成第一种形式,那么dao层需要增加@Param

public interface CompanyMemberRelReadDao {


CompanyMemberRel getCompanyMemberRel(@Param("companyId") Integer companyId, @Param("memberId") Integer memberId);

}
0 0
原创粉丝点击