1.mybatis的官网关于$和#的字符串替换符号区别描述如下: http://www.mybatis.org/mybatis-3/zh/sqlmap-xml.html#Parameters 上面的意思是说:假如参数columnName的值是ID,那么${columnName}会变成ID,#{columnName}会被替换成'ID',变成了字符串,注意引号. 2.对于上面的描述谈下自己的理解: 假如你使用符号#,那么输入的参数会被看做字符串,假如你输入参数--ID,最后就会变成字符串--'ID'