ibatisでは正しく$と〹を使います。

684 ワード

中間変数は直接値に換えるもので、sql注入の問題を注意しなければならない。
以下の例
Sqlコード
  • select $name from $テーブル  
  • select $name$ from $table$
     
    name='name table='A'なら、このsqlは以下の通りです。
    Javaコード
  • select name莻. from A  
  • select name# from A
     
    しかし、もしそうであれば、
    Sqlコード
  • select #name莻. from #table. where #name〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓  
  • select #name# from #table# where #name#=#name#
     
    sqlは以下の通りです
    Javaコード
  • select 'name. from 'A。 where 'name落=' name33859;'  
  • select 'name#' from 'A' where 'name#'='name#'
     
    エラーを申し込む。