學(xué)習(xí)Java Servlet時(shí)遇到的小問(wèn)題
最近才開(kāi)始學(xué)Java Servlet,今天寫(xiě)了個(gè)網(wǎng)站登入驗(yàn)證的Java Servlet的小程序,當(dāng)我寫(xiě)完后編譯通過(guò)了,但是當(dāng)我輸入用戶和密碼后跳轉(zhuǎn)到歡迎界面的時(shí)候,卻發(fā)生了一件蹊蹺的事情。在我的welcom.Java程序里面,我可以接受到登入頁(yè)面的用戶名和密碼,但是我卻接受不到從數(shù)據(jù)庫(kù)里面讀出來(lái)的表格,花了我大半天的時(shí)間,才找到錯(cuò)誤的原因所在。出問(wèn)題的語(yǔ)句如下:
pstm=con.prepareStatement("select*fromuserslimit"+(pageSize*(pageNow-1))+",3");
這條語(yǔ)句看上去貌似沒(méi)有什么問(wèn)題啊,不錯(cuò)啊,可是問(wèn)題就是出在這個(gè)地方:(pageSize*(pageNow-1)),這里我多加了一個(gè)括號(hào),當(dāng)時(shí)寫(xiě)這個(gè)的時(shí)候我覺(jué)得(pageSize*(pageNow-1))和pageSize*(pageNow-1)都一樣嘛,沒(méi)什么問(wèn)題啊。以前寫(xiě)Java程序的時(shí)候我也經(jīng)常這樣寫(xiě)啊,也沒(méi)出現(xiàn)過(guò)什么錯(cuò)誤,但是今天我卻栽在這括號(hào)上了,花了我大半天的時(shí)間來(lái)找錯(cuò)誤。剛開(kāi)始的時(shí)候我認(rèn)為這個(gè)問(wèn)題是出現(xiàn)在表格的書(shū)寫(xiě)格式上面,可是我找了半天也沒(méi)在表格的書(shū)寫(xiě)格式上面挑出毛病來(lái),后來(lái)又一行一行的找,覺(jué)得沒(méi)有什么錯(cuò)誤啊,到***我實(shí)在是崩潰了,只要來(lái)求助與網(wǎng)上的朋友,網(wǎng)上的朋友提示我是不是我與數(shù)據(jù)庫(kù)的連接出了毛病,所以我又開(kāi)始重點(diǎn)來(lái)查數(shù)據(jù)庫(kù)這塊程序,于是我想是不是嘗試把
pstm=con.prepareStatement("select*fromuserslimit"+(pageSize*(pageNow-1))+",3");
改為:pstm=con.prepareStatement("select*fromuserslimit0,3");
哈哈,果然我在次打開(kāi)程序的時(shí)候,我的程序運(yùn)行正常了,于是我想毛病一定出在了(pageSize*(pageNow-1))這個(gè)上面,可是這個(gè)(pageSize*(pageNow-1))也看不出什么毛病來(lái)嘛,當(dāng)我去掉外面的小括號(hào)后,呀,程序正常了,雖然我不知道為什么在(pageSize*(pageNow-1))多加了個(gè)小括號(hào)就不能訪問(wèn)數(shù)據(jù)庫(kù)了,但是我還是很開(kāi)心,因?yàn)槭冀K我也是找到了問(wèn)題的所在啊,以后再寫(xiě)類似的程序的時(shí)候就會(huì)注意到了。
我把我今天犯的錯(cuò)誤寫(xiě)出來(lái),讓大家參考一下,可以避免這樣的錯(cuò)誤,這種錯(cuò)誤不容易看出來(lái),大家碰到Java Servlet這種情況的時(shí)候注意一下,就不會(huì)像我今天這樣被一個(gè)小括號(hào)弄的頭昏腦脹的。
【編輯推薦】