最近做個(gè)小項(xiàng)目,項(xiàng)目要求把使用百度控件ueditor上傳的圖片存放在非工程目錄下,指定到指定盤符,路徑可配置,ueditor默認(rèn)情況下存放在工程內(nèi)部,如:
D:\soft\apache-tomcat-7.0.41\apache-tomcat-7.0.41\webapps\test\ueditor
現(xiàn)要求將圖片存放到服務(wù)器外面,如以下路徑(舉例):
D:\demo\pic
同時(shí)顯現(xiàn)前端展示圖片,以及在ueditor富文本框中回顯圖片。
現(xiàn)將實(shí)現(xiàn)過(guò)程展示如下(較為粗糙,同時(shí)參考了別人實(shí)現(xiàn)過(guò)程,后面會(huì)給出相關(guān)鏈接)
1、首先在配置文件application.properties中配置路徑如下:
2、修改ueditor導(dǎo)入包中兩個(gè)文件的值:
其中config.json中修改值如下:
其中imageUrlPrefix設(shè)為空,imagePathFormat保持默認(rèn)值;
然后修改controller.jsp中值:
3、修改源碼:導(dǎo)入修改之后的jar包
內(nèi)部類主要修改如下:
其中遇到一個(gè)問(wèn)題就是當(dāng)時(shí)沒(méi)修改源碼,只是將controller.jsp中
ActionEnter(request, rootPath).exec()中的rootPath傳配置好的絕對(duì)路徑時(shí),不能實(shí)現(xiàn)上傳文件,修改源碼之后才實(shí)現(xiàn)的!
注意:完成上面三步,只能實(shí)現(xiàn)將圖片上傳到配置路徑中,不能實(shí)現(xiàn)在富文本框中的圖片回顯,即如下效果:
沒(méi)有修改js時(shí)非常顯示,其實(shí)這時(shí)圖片已經(jīng)實(shí)現(xiàn)上傳,只是由于img標(biāo)簽src屬性不正確。
正常顯示:
實(shí)現(xiàn)圖片即刻在文本框中顯示效果,一般有兩種效果,第一種就是配置tomcat的虛擬映射路徑;第二種就是通過(guò)專門的action用數(shù)據(jù)流實(shí)現(xiàn)顯示圖片效果;這里介紹第二種!
4、項(xiàng)目使用spring框架,處理圖片的action中方法如下:
而其中的image1.jsp如下所示,jsp中通過(guò)java代碼實(shí)現(xiàn)圖片流的顯示!
5、完成上面4步還是不能完成實(shí)現(xiàn)富文本框中圖片回顯,需要修改ueditor中的js文件ueditor.all.js中代碼,因?yàn)榇颂幮枰薷牡氖巧蟼鲌D片img標(biāo)簽下的src屬性,默認(rèn)情況下,該src取值是上面的
imagePathFormat值,此處需要修改src屬性值,前面加一個(gè)string值,修改后,即可見src屬性變?yōu)槿缦拢?br>
網(wǎng)頁(yè)代碼如下:
該處src路徑即可完成圖片的請(qǐng)求,該請(qǐng)求通過(guò)上面的action的image1方法實(shí)現(xiàn)。
到這時(shí),即實(shí)現(xiàn)圖片上傳的非工程目錄的指定路徑下
參考文章如下(應(yīng)用的是此文給出的jar包,表示感謝):
http://blog.csdn.net/ouyhong123/article/details/44461689聯(lián)系客服