简单来讲#{} 解析的是占位符?能够防止SQL注入, 好比打印出来的语句 select * from table where id=? 然而${} 则是不能防止SQL注入打印出来的语句 select * from table where id=2 实实在在的参数
DAO层的函数方法 sql
[sql] view plain copyapp
对应的Mapper.xml 函数
[sql] view plain copyui
其中,#{0}表明接收的是dao层中的第一个参数,#{1}表明dao层中第二参数,更多参数一致日后加便可。spa
此方法采用Map传多参数..net
Dao层的函数方法xml
[sql] view plain copyblog
对应的Mapper.xml接口
[sql] view plain copyip
Service层调用
[sql] view plain copy
我的认为此方法不够直观,见到接口方法不能直接的知道要传的参数是什么。
Dao层的函数方法
[sql] view plain copy
对应的Mapper.xml
[sql] view plain copy
我的以为这种方法比较好,能让开发者看到dao层方法就知道该传什么样的参数,比较直观,我的推荐用此种方案。