通常情况下,使用Mapper.xml是无法实现多个参数的传递,除非传入Map或者是对象,这个时候我们就可以使用接口绑定的方法传入多个参数,
实现方法
第一步:创建一个与XML包名,类名完全相同的接口,包名类名即XML中配置的namespace
第二步:创建一个与XML中ID相同的方法,然后设置参数,
public interface LogMapper {
List<Log> selAll();
}
第三步:在 mybatis.xml 中使用<package>进行扫描接口和 mapper.xml
<mappers>
<package name="com.bjsxt.mapper"/>
</mappers>
在XML中传递参数
因为有多个参数,所以在XML中参数的返回值可以不用写, 但是在传参的时候。
第一种方法:可以在SQL语句中加入#{0} #{param1}就可以传递参数
第二种方法: 使用注解传递参数,
第一步 : 在函数的参数前添加注解
List<Log> selByAccInAccout(@Param("accin") String
accin123,@Param("accout") String accout3454235);
第二步: #{} 里面写@Param(“内容”)参数中
<!-- 当多参数时,不需要写 parameterType -->
<select id="selByAccInAccout" resultType="log" >
select * from log where accin=#{accin} and
accout=#{accout}
</select>
这就相当于是系统底层给我们也注释中写的字符串为Key 以形参为value 形成一个key然后传递给XML 这就实现了多个参数的传递