いくつかの理由があります。
その結果、フィールド内の1 MySQLのテーブルの名前は
名前=#{NN}
名前は特別なフィールドで、 `name`の=#{NN}を変更する必要があります
2。
、関連するファジークエリのSQLがある場合Mapper.xmlファイルでMyBatisのでは、真ん中のは文がたったの$を使用することができます含まれているように、#を使用することはできません。
直接文字列を渡すために、同等の$を使用している場合ただし、SQLインジェクションの危険性があります
#{}構文を使用すると、MyBatisのはPreparedStatementのプロパティを生成させ、設定されたパラメータ値のPreparedStatement安全に(例えば?)に応じます。これは安全であるが、より速く、ほとんどの場合、好ましい
連結(「%」、#よう {NN}、「%」) 解決す
$ {name}は単一引用符で、#{name}は単一引用符で
あなたは「%の#{名}%」のように使用するときに、このエラーが報告されます
3.?対応する数の上に設けられたプレースホルダの値が矛盾しません