我现在就用mybatis框架,传参时会用到#{}、${},但是我一直用#{}传参的,就我知道的区别写下吧,日后发现不同再改
#{}:标识占位符,向占位符传入参数,mybatis会自动将java类型转换成jdbc类型,预编译时,不传入参数而是用?占位,不易出现sql注入问题;
${}:标识sql拼接,通过${}接收参数,将参数的内容不加修饰的传入sql,易发生sql注入,不安全;
我现在就用mybatis框架,传参时会用到#{}、${},但是我一直用#{}传参的,就我知道的区别写下吧,日后发现不同再改
#{}:标识占位符,向占位符传入参数,mybatis会自动将java类型转换成jdbc类型,预编译时,不传入参数而是用?占位,不易出现sql注入问题;
${}:标识sql拼接,通过${}接收参数,将参数的内容不加修饰的传入sql,易发生sql注入,不安全;