您的位置:首页 > 大数据 > 人工智能

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

2015-11-25 17:21 405 查看
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);
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: