1. 程式人生 > >mybatis中#{}和${}符號的區別

mybatis中#{}和${}符號的區別

Mybatis的介面對映檔案UserMapper.xml、引數傳遞有2種方式、一種是#{}、另一種是${}

二者有著很大的區別:

#{} 實現的是sql語句的預處理引數、之後執行sql中用?號代替、使用時不需要關注資料型別、mybatis自動實現資料

型別的轉換、並 且可以防止sql注入

${} 實現是sql語句的直接拼接、不做資料型別轉換。需要自行判斷資料型別、不能防止sql注入

總結:

#{} 佔位符、用於引數傳遞

${} 用於sql拼接