在MyBatis中,动态SQL的参数可以使用#{}或${}两种方式。使用#{}时,MyBatis会自动为传入的参数加上双引号,以防止SQL注入。例如,当使用order by #user_id#时,如果用户输入的是"111",最终生成的SQL语句将是order by "111",这可以防止恶意输入带来的风险。而${}则是直接将参数插入到SQL语句中,不进行任何转换。比如,order by ${user_id},如果传入的是"111",生成的SQL语句则是order by 111,如果传入的是"111",生成的SQL语句则是order by 111。