目录
查询
删除
添加
修改
${}与#{}区别
是指直接在接口中添加MyBatis注解完成CRUD功能,在实施此步骤前一定要先将接口全限定名注册到MyBtis的xml文件中的<mappers>
<mappers><mapper class="com.qf.mybatis.part1.annotations.UserMapper" /><!-- class="接口全限定名"-->
</mappers>
查询
@Select("select * from user")public List<User> selectAll();
@Select("select * from user where id=${id}")public User selectUserById(@Param("id") Integer id);;
@Select("select * from user where id=${id} and name='${name}'")public User selectByIdAndName(@Param("id") Integer id,@Param("name") String name);
删除
@Delete("delete from t_student where id=#{id}")public int delStudent(int id);
添加
@Insert("insert into t_student(username,password,sex,birthday) values(#{username},#{password},#{sex},#{birthday})")
int addStudent(Student student);
修改
@Update("UPDATE t_users SET name = #{name} , password = #{password} , salary = #{salary} , birthday = #{birthday} WHERE id = #{id}")
public int updateUser(User user);
${}与#{}区别
在mybatis的配置中使用过${}, 此处主要区分在SQL中的${}与#{}
两者区别:
${}在一个参数中也需要加@Param,取匹配名字,因为默认识别传参为对象
${}用在参数为字符串中,需要自带‘’; 因为${}是直接替换值
${}具有SQL注入的安全隐患,不适合匹配字符串参数