Posted on 2008-04-09 22:40
xan 閱讀(199)
評論(0) 編輯 收藏 所屬分類:
Java
spring+jdbc
pro spring上的一個例子,原例比較亂,分塊介紹,這里整合為 eclipse 下java project, 代碼中有關鍵部分的注釋:
http://www.namipan.com/d/SpringWithJDBC.zip/af150784ec5c40cdfb26b82e2fc990c9676206cfe3540000
File upload & download
源碼也是別人的,出處忘了,sry. 原來是用myeclipse,我沒有這個插件,不過相當沒關系,只要重新建工程,再機械的^V就好了.
代碼的分析(待添加...)
遇到的問題: web project 的包放錯了(直接在configpath里添加了...暈菜...),導致出現(xiàn)服務器啟動時無法找到ActionServlet錯誤(不過代碼編譯時是沒有錯誤的) -----這個錯誤很低級,不過我雖然知道應該加到web-info的lib里,但是不是特別清楚configpath和lib的區(qū)別,或者說我猜到了, 卻希望能從其他人那里得到印證.
http://www.namipan.com/d/FileUploadDownload.zip/f60b9d9ad299a491d2794ca6e83739e2f9652c1f47b01500
驗證碼圖片
網上看到的,比較簡單,隨機生成背景(不復雜),隨機生成數(shù)字,將數(shù)字嵌入背景
http://www.namipan.com/d/ValidatePic.zip/63a3d84ef622464994779e761808728ce5f64e342d170000
原代碼中一個比較有價值的問題:
使用上述代碼時會拋出一個異常:getOutputStream() has already been called for this response
tomcat5下jsp出現(xiàn)getOutputStream() has already been called for this response異常的原因和解決方法
在tomcat5下jsp中出現(xiàn)此錯誤一般都是在jsp中使用了輸出流(如輸出圖片驗證碼,文件下載等),
沒有妥善處理好的原因。
具體的原因就是
在tomcat中jsp編譯成servlet之后在函數(shù)_jspService(HttpServletRequest request, HttpServletResponse response)的最后
有一段這樣的代碼
finally {
if (_jspxFactory != null) _jspxFactory.releasePageContext(_jspx_page_context);
}
這里是在釋放在jsp中使用的對象,會調用response.getWriter(),因為這個方法是和
response.getOutputStream()相沖突的!所以會出現(xiàn)以上這個異常。
然后當然是要提出解決的辦法,其實挺簡單的(并不是和某些朋友說的那樣--
將jsp內的所有空格和回車符號所有都刪除掉),
在使用完輸出流以后調用以下兩行代碼即可:
out.clear();
out = pageContext.pushBody();