StudentMapper.java
StudentMapper.xml
方法一、传入多个String类型参数, 使用@Param注解
1、StudentMapper.java中写法:
List<Student> getStudent(@Param("grade")String grade, @Param("class")String class,@Param("name")String name);
2、StudentMapper.xml中写法:
<select id="getStudent" parameterType="java.lang.String" resultType="Student">
select nn_grade, nn_class, nn_name, nn_age, nn_sex, nn_birthdate, nn_address from student
<where>
<if test="grade != null and grade != ''">
and nn_grade=#{grade}
</if>
<if test="class != null and class != ''">
and nn_class=#{class}
</if>
<if test="name != null and name != ''">
and nn_name=#{name}
</if>
</where>
</select>
方法二、 传入多个String类型参数, 使用#{0},#{1},#{2}……
1、StudentMapper.java中写法:
List<Student> getStudent(String grade, String class,String name);
2、StudentMapper.xml中写法:
<select id="getStudent" parameterType="java.lang.String" resultType="Student">
select nn_grade, nn_class, nn_name, nn_age, nn_sex, nn_birthdate, nn_address from student
<where>
<if test="#{0} != null and #{0} != ''">
and nn_grade=#{0}
</if>
<if test="#{1} != null and #{1} != ''">
and nn_class=#{1}
</if>
<if test="#{2} != null and #{2} != ''">
and nn_name=#{2}
</if>
</where>
</select>
方法三、 传入多个String类型参数, 使用Map
1、StudentMapper.java中写法:grade,class,name是Map的key
List<Student> getStudent(Map param);
2、StudentMapper.xml中写法:
<select id="getStudent" parameterType="java.util.Map" resultType="Student">
select nn_grade, nn_class, nn_name, nn_age, nn_sex, nn_birthdate, nn_address from student
<where>
<if test="grade != null and grade != ''">
and nn_grade=#{grade}
</if>
<if test="class!=null and class!=''">
and nn_class=#{class}
</if>
<if test="name!=null and name!=''">
and nn_name=#{name}
</if>
</where>
</select>
方法四、grade,class,name是Student对象的属性
1、StudentMapper.java中写法:grade,class,name是Student对象的属性;
List<Student> getStudent(Student stu);
2、StudentMapper.xml中写法:
<select id="getStudent" parameterType="Student" resultType="Student">
select nn_grade, nn_class, nn_name, nn_age, nn_sex, nn_birthdate, nn_address from student
<where>
<if test="grade != null and grade != ''">
and nn_grade=#{grade}
</if>
<if test="class!=null and class!=''">
and nn_class=#{class}
</if>
<if test="name!=null and name!=''">
and nn_name=#{name}
</if>
</where>
</select>