单个参数
mapper接口
User selectById(Integer id);
映射文件
<select id="selectById" resultType="com.example.demo.domain.User" parameterType="int">
select username,display_name from user where id= #{id}
</select>
多个参数
- map方式传参
mapper接口
User selectByMap(Map map);
映射文件
sql中的参数名对应与map中的key
<select id="selectByMap" resultType="com.example.demo.domain.User">
select * from user where username=#{username} and display_name=#{displayName}
</select>
- mybatis默认参数方式
mapper接口
User selectByUserNameAndDisplayName(String username,String displayName);
映射文件
param1 param2 param3 …以此类推 对应与mapper中的参数列表
<select id="selectByUserNameAndDisplayName" resultType="com.example.demo.domain.User">
select * from user where username=#{param1} and display_name=#{param2}
</select>
3.@param注解方式
mapper接口
User selectByParam(@Param("name") String name,@Param("age") int age);
映射文件
<select id="selectByParam" resultType="com.example.demo.domain.User">
select * from user where name=#{name} and age =#{age}
</select>