使用native 查询时,对特殊字符的处理。
解決方法1:在sql中進行處理。注意,是對輸入對象的每個參數做這樣的處理,不是統一處理。統一處理,會出錯的。
String sql= sql.replace("%", "\"%").replace("_", "\"_").replace("[", "\"[").replace("]", "\"]").replace("^", "\"^").replace("'","''");
解決方法2:在輸入對象中進行處理。(推薦)
paramConverter(){
public void convert(Params params){
?? ??? ???? if(StringUtil.isNotEmpty(params.getUserId())){
?? ??? ??? ??? ?params.setUserId(params.getUserId().replace("%", "\"%").replace("_", "\"_").replace("[", "\"[").replace("]", "\"]").replace("^", "\"^").replace("'","''");
?? ??? ??? ?}
}
}
解決方法3:待續,原因未驗證。
轉載于:https://www.cnblogs.com/davidwang456/archive/2013/03/08/2949413.html
總結
以上是生活随笔為你收集整理的使用native 查询时,对特殊字符的处理。的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 开发团队如何完成一个项目?
- 下一篇: sql server监控