關於SSH上傳圖片並把圖片顯示在頁面中

       最近在做一個小項目,對於一個還沒畢業還在努力奔跑的小菜鳥來說,用SSH上傳圖片並且保存圖片路徑在數據庫中,簡直不要太難,百度過好多方法,加上自己琢磨,總算在三天之後成功上傳並且顯示出來了。之前用過PHP,也是上傳圖片並且顯示出來,那時候是直接參考學長的代碼,將圖片保存在一個文件夾裏面,然後將要顯示的圖片放在一個配置文件裏面,之後直接讀取配置文件裏的內容,成功顯示在頁面上。

選擇上傳圖片的JSP頁面:


Action方法:



這個代碼裏面參考了百度上不記得是哪位大神的代碼,也加了一些自己的想法。我的image對象裏面就只有path一個屬性,本來之前還加了一個ID的,但是因爲我把ID設置成自增的,然後我一時半會不記得怎麼不管它讓它自己增長了,所以乾脆刪掉了。

還有Image image=new Image();這裏沒截下來了。我之前就沒有new,結果一直提示我空指針,我還以爲是這個方法有問題,於是又換成把圖片轉換成二進制流的方法,還是不行,最後發現是這個問題,很崩潰,花了我兩天的時間在研究它。後來找到原因了還是換回了這個方法,感覺二進制流的我自己不是很明白,不敢擅用。

pt那裏實際是前面的newName就可以了,因爲這個沒部署到服務器上面去,所以總是圖片上傳也只是暫時的,所以我當時在測試是不是因爲後綴名的問題,因爲我上傳的圖片都是.JPG,而裏面原有的都是.jpg,我還以爲是我大小寫搞錯了所以才顯示不了,後來發現根本不是的。

service方法:


Dao代碼:


以上是實現圖片上傳的代碼,我是保存的相對路徑,本來之前保存的是絕對路徑,後來發現斜槓有問題,於是就乾脆改成相對路徑了。

圖片顯示JSP頁面:


這個在圖片上傳成功之後還有個頁面跳轉過來的,因爲我不會做前端的JS。

Action方法:


我把list保存到session裏面了,然後在顯示頁面也遇到了很多麻煩,剛開始一直輸出不了,讀取不了,很是鬱悶。

Service和Dao方法:



最後是顯示圖片的頁面:


我存的是相對路徑,在WebContent下的image文件夾,所以這裏顯示的時候做了點小處理。

千萬千萬要記得加:


我之前就忘記了加這個,一直覺得應該沒事吧,結果就。。。。

嗯。。。。最後還是總結一下,,,,,很簡陋的代碼,但是長知識了

又加需求了,我得滾回去寫代碼去了。。。。。。。。。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章