用注解来简化xml配置的时候,@Param注解的做用是给参数命名,参数命名后就能根据名字获得参数值,正确的将参数传入sql语句中 java
咱们先来看Mapper接口中的@Select方法sql
package Mapper; public interface Mapper { @Select("select s_id id,s_name name,class_id classid from student where s_name= #{aaaa} and class_id = #{bbbb}") public Student select(@Param("aaaa") String name,@Param("bbbb")int class_id); @Delete...... @Insert...... }
这里解释一下数据库
1.@Select(....)注解的做用就是告诉mybatis框架,执行括号内的sql语句mybatis
2.s_id id,s_name name,class_id classid 格式是 字段名+属性名,例如s_id是数据库中的字段名,id是类中的属性名app
这段代码的做用就是实现数据库字段名和实体类属性的一一映射,否则数据库不知道如何匹配框架
3.where s_name= #{aaaa} and class_id = #{bbbb} 表示sql语句要接受2个参数,一个参数名是aaaa,一个参数名是bbbb,若是要正确的传入参数,那么就要给参数命名,由于不用xml配置文件,那么咱们就要用别的方式来给参数命名,这个方式就是@Param注解xml
4.在方法参数的前面写上@Param("参数名"),表示给参数命名,名称就是括号中的内容blog
public Student select(@Param("aaaa") String name,@Param("bbbb")int class_id);
给入参 String name 命名为aaaa,而后sql语句....where s_name= #{aaaa} 中就能够根据aaaa获得参数值了接口