一張圖就可以明白 區別所在.
#{ } 表示一個佔位符 ?
1.通過#{ }可以實現preparedStatement向佔位符中設置值,
2.自動進行java類型和jdbc類型轉換,
3.#{ }可以有效防止sql注入。
4.#{ }可以接收簡單類型值或pojo屬性值。
5.如果parameterType傳輸單個簡單類型值,#{ }括號中可以是value或其它名稱。
${ } 表示拼接sql串
1.${ }可以將parameterType 傳入的內容拼接在sql中
2.不進行jdbc類型轉換,
3.${ }可以接收簡單類型值或pojo屬性值,
4.如果parameterType傳輸單個簡單類型值,${ }括號中只能是value。