关于@Param()注解

  • 基本类型的参数或者String类型的参数需要加上

  • 应用类型不需要加

  • 如果只有一个基本类型就可以忽略

  • 在SQL中引用的就是@Param("uid")中设定的参数。

    public interface PeopleMapper {
        @Select("select * from mybatis.people where id=#{pid};" )
        People getPeopleById(@Param("pid") int id);
    }
    
    
    
    
    

#{} 与 ${} 的区别

  • 符号#{} 是预编译处理,像传进来的数据会加个" "(#将传入的数据都当成一个字符串,会对自动传入的数据加一个双引号)

  • 符号${}就是字符串替换。直接替换掉占位符。$方式一般用于传入数据库对象,例如传入表名.

  • 使用 ${} 的话会导致 sql 注入。所以为了防止 SQL 注入,能用 #{} 的不要去用 ${}

posted on 2021-09-15 22:18  需要多勇敢  阅读(1164)  评论(0)    收藏  举报