背景
由于畢業(yè)設(shè)計需要有前后端交互的功能溢豆,本人趕鴨子上架硬生生一個工作還沒搞定的 Android選手開始學(xué)一點java后端的東西歇拆。當(dāng)然作為一個未來的程序員,簡單自學(xué)做到crud不應(yīng)該是無法做到的水平系羞。雖然問了同學(xué)們都說啥spring啊natty啊框架去寫會方便很多匣掸,但是越想找捷徑好像對于很多東西越模糊,于是還是決定就直接servlet+mysql來做這一個后端的任務(wù)雄家,過程中參考當(dāng)年學(xué)Android必踩一堆弱智坑效诅,于是決定養(yǎng)成記錄這些弱智坑的情況,更新在此
問題1:
Q:為啥我新建在src下的java文件死活訪問不到一直報404?
A:
在這個頁面里填帽,修改application context為空就好蛛淋,默認(rèn)情況下會有上面紅框的前綴,意思理解為就是默認(rèn)會在這個文件夾下去尋找類篡腌,而改稱空了之后會直接在工程文件的src下直接找
問題2
Q:一通操作之后加載jdbc驅(qū)動來實現(xiàn)讀取數(shù)據(jù)庫輸出在網(wǎng)頁的簡單操作褐荷,為什么url訪問類的時候一直報錯尋找不到j(luò)dbc加載的類?
A:
這個窗口下會顯示你整個項目運行后輸出的文件嘹悼,classes和lib都是跟著網(wǎng)上教程手動創(chuàng)建并修改成輸出的文件存放的地方的類叛甫,而報錯的時候左方紅框的lib會缺少這個connecter的jar包(個人理解為輸出的文件里檢索不到j(luò)ar包所以找不到這個jar包里的jdbc驅(qū)動對應(yīng)的類)而右邊剛好會出現(xiàn),直接把右邊的雙擊自動移到左邊就解決問題了杨伙。
問題3
Q:為什么判斷resultset對象是否為空會一直報錯
A:JAVA中
ResultSet rs = stmt.executeQuery(sql);? //查詢返回的結(jié)果集
不管sql是否查到匹配的數(shù)據(jù)項其监,resultset都不是null,所以不能用這個是否為空來判定限匣,要用rs.next()是否為false抖苦,有則為true,沒有為false
問題4
Q:為什么和對方通信的時候sql語句報錯不存在
A:sql語句中使用到String類型的時候要加用單引號加雙引號括起來
(湊合應(yīng)付完成主要功能米死,對應(yīng)把初稿提交了锌历,不過工程代碼有些性能問題還有代碼相對冗余,找時間優(yōu)化的時候再記錄一下問題吧)