1.在传单个integer或者long型的数据时,接收使用_parameter或者使用注解@param
eg1:
Mapper.java:
Integer selectByMessageReceiverId(Long messageReceiverId);//传入一个Long型的参数
Mapper.xml:
SELECT COUNT(*) FROM
message_list
WHERE
id= #{_parameter} //这里就使用了_parameter接收参数
eg2:
Mapper.java:
Integer selectByMessageReceiverId(@param("id") Long id)传入一个Long型的id参数
Mapper.xml:
SELECT COUNT(*) FROM
message_list
WHERE
id= #{id} //这里就使用了id接收参数
2.传入多个参数时,采用占位符来接收(同样可以用方法一种的注解@param)
eg:
Mapper.java:
void select(int a,String b);
Mapper.xml:
SELECT COUNT(*) FROM
message_list
WHERE
id = #{0} //第一个参数a
and name = #{1} //第二个参数b
3.Map形式的传递
eg:
Mapper.java:
void select(Map map);Mapper.xml:
SELECT COUNT(*) FROM
message_list
WHERE
id = #{id}
and name = #{name}
小结:当传递的参数只有一个时用第一种方法比较好,超过一个参数用方法二,参数较多用Map传递更为方便。在实际中用Map还是比较多,很灵活。