簡體   English   中英

有什么更好的方法檢查JdbcTemplate.batchUpdate中的名稱字段,名稱表的SQL注入?

[英]What better way to check SQL injection of names field, names tables in JdbcTemplate.batchUpdate?

在插入查詢中,我使用SEQUENCE,因此,我拒絕使用SimpleJdbcInsert .... executeBatch(data);。

String sql = "INSERT INTO "+ schema +"."+ tableName +" (id, " + fieldName1 + ", " + fieldName2 + ") VALUES (BUF_SEQ.nextval, ?, ?)";
List<Object[]> recordValues = new ArrayList<Object[]>();
//... add values of records to recordValues list

// run bash update for insert
jdbcTemplate.batchUpdate(sql, recordValues);

也許有人可以建議使用Springframework jdbc的更好方法? 要插入大量記錄。 在SQL注入中測試字段名稱。

1)與其在插入查詢中調用序列,不如在表的id列上創建觸發器以進行插入。 請參考: 如何在Oracle上使用AUTO_INCREMENT創建ID?
2)現在使用spring的Batch update進行批量插入,即jdbcTemplate.batchUpdate
現在,在您的插入查詢中,您不再需要定義id,每次在表上進行插入時,都會觸發觸發器,並且id會增加。
3)使用Prepared Statement進行插入查詢,以避免sql注入。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM