Mybatis中注解版的Mapper获取参数值以及如何模糊查询

@Mapper
public interface UserMapper {

    @Select("select * from User")
    public List<User> retrieveAllUsers();

    //注意这里只有一个参数,则#{}中的标识符可以任意取
    @Select("select * from User where id=#{param}")
    public User retrieveUserById(int id);

    // 模糊查询,使用 CONCAT('%',#{param},'%')
    @Select("select * from User where id=#{id} and userName like CONCAT('%',#{name},'%')")
    public User retrieveUserByIdAndName(@Param("id")int id, @Param("name")String names);

    @Insert("INSERT INTO user(userName,userAge,userAddress) VALUES(#{userName},"
            + "#{userAge},#{userAddress})")
    public void addNewUser(User user);

    @Delete("delete from user where id=#{id}")
    public void deleteUser(int id);

    @Update("update user set userName=#{userName}, userAddress=#{userAddress}"
            + " where id=#{id}")
    public void updateUser(User user);
}

当有多个参数时,需要加上@Param指定name,达到区别的目的。

猜你喜欢

转载自blog.csdn.net/Code_shadow/article/details/81280897