網上有很多,總之,簡略的寫一下,作為備忘。例子中假設參數名為 paramName,類型為 VARCHAR 。
1.優先使用#{paramName,jdbcType=VARCHAR} 寫法,除了可以防止sql注入以外,它還能在參數里含有單引號的時候自動轉義,
而${paramName}由於是類似於拼接sql的寫法,不具備此功能。
2.注意,使用 #{paramName,jdbcType=VARCHAR} 寫法的時候,模糊查詢的寫法為:'%'||#{paramName,jdbcType=VARCHAR}||'%'