1. 程式人生 > >mybatis學習$與#號取值區別

mybatis學習$與#號取值區別

查詢 pass where ${} 學習 封裝 lec 多個 沒有

1,多個參數傳遞用map或實體封裝後再傳給myBatis,

mybatis學習$與#號取值區別

#{} 1.加了單引號, 2.#號寫是可以防止sql註入,比較安全

select * from user where username=#{username} and password=#{password} 變成 ...where username=‘張三’ and password=‘123’

${} 2.沒有加單引號 2.${}寫法無法防止sql註入(模湖查詢時用‘%${username}%’) 或用cancat (‘%‘,${username},‘%‘)

select * from user where username=${username} and password=${password} 變成 ...where username=張三 and password=123

mybatis學習$與#號取值區別