看板 java 關於我們 聯絡資訊
※ 引述《cyclone350 (老子我最神)》之銘言: : 不過剛剛看到 LaPass 在 webdesign 版上看到他說有人 sql 語句用 + 號湊成 : 不管是用什麼 framework都不安全... : 不過就我目前的想法,動態形成HQL或是SQL語句時除了這方法,想不太到別的。 : 另外不安全的意思是?? Hacker 會駭到我的 JVM 裡面,改我的 String pool 嗎? 剛好天氣冷所以宅在家 那就單就這段來回答 全部用+來湊sql容易產生sql injection的問題 因為db通常都透過web來操作 而要查詢的資料常常是透過web的form或是querystring帶過來的 如果直接把這個字串丟到sql 那可能會被hacker拿去組你原本沒想到的sql 假設你原本寫的sql是 "select * from Order where uid=" + uid 這時使用者寫了一個uid是[0 or 1 = 1] 這時組出來的sql就是 select * from Order where uid = 0 or 1 = 1 這時就會把所有的Order都扔出來了 解決方法是你最好用jdbc的prepared statement.. 或是你用hibernate/jpa,那就用jpql parameter來避免sql injection.. -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 220.137.78.102
cyclone350:了解,謝謝 12/30 17:05
cyclone350:在spring上面的hibernateTemplate有許多要設定param 01/01 01:40
cyclone350:google一下用那個應該就可以了,另外想問J2EE基礎的書 01/01 01:42
cyclone350:除了王者歸來還有其他推薦的嗎?簡體也可,2008後 01/01 01:45
cyclone350:因為我繁體書根本找不到書...只有王者歸來那本 01/01 01:47
song760211:上網查討厭鬼 ssh教學 01/01 08:43
popcorny:建議看官方文件 這領域要看中文的真的是慢又少 01/01 15:02