用註解來簡化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獲得參數值了接口