MyBatis
Spring Boot MyBatis
註解
參考資料:(https://zhuanlan.zhihu.com/p/29664462)
1.#{}
使用這個,意味著使用 "預編譯" 語句,也就是 JDBC 的 preparedStatement。
sql 語句中如果存在參數,則會用 "?" 作為佔位符,可以使用這種方式防止 SQL 注入攻擊。
並且使用這種方式,會自動帶有引號。也就是說,該參數被默認為字串。
2.${}
倘若不希望參數能夠原樣輸出,不希望被轉成字串,則使用這個。
可以的話,盡量使用第一種會比較好,因為可以防止 SQL 注入攻擊。
倘若希望原樣輸出,則使用第二種。使用時小心不要被攻擊了。
Last updated