spring boot 若依系統(tǒng)整合Ueditor胳喷,部署時(shí)候上傳圖片錯(cuò)誤解決

spring boot 若依系統(tǒng)整合Ueditor湃番,部署時(shí)候上傳圖片錯(cuò)誤解決

前言:國慶假期找了個(gè)ruoyi版本的cms玩玩,從git上看吭露,介紹如下圖:

后臺部分截圖:

編輯

?

編輯

?

編輯

?

編輯

?

前臺blog截圖:

編輯

?

編輯

?

看上去還可以不錯(cuò)吠撮,于是clone下來玩玩,結(jié)果發(fā)現(xiàn)讲竿,發(fā)布文章的時(shí)候泥兰,編輯器有問題,上傳不了圖片题禀,還有其他幾個(gè)地方有問題鞋诗,怎么解決呢?自己上手?jǐn)]代碼迈嘹,修改唄削彬。于是,下載了ueditor的源碼秀仲,加到項(xiàng)目中融痛,進(jìn)行修改。現(xiàn)在已經(jīng)修改完成神僵,并且也發(fā)布到的服務(wù)器上了雁刷,歡迎大家訪問測試。文末會有凱哥修改后的git地址o~

正文:

在spring boot整合UEditor的時(shí)候保礼,本地idea編輯器中沒問題沛励,但是部署服務(wù)器上责语,上傳圖片提示:“后端配置項(xiàng)沒有正常加載,上傳插件不能正常使用侯勉!”解決辦法鹦筹。

出現(xiàn)這種情況,可以很負(fù)責(zé)任的告訴你99%是因?yàn)橹访玻诩虞d的時(shí)候铐拐,沒有獲取到ueditor的config.json文件。怎么處理了练对?

分析原因:

查看原來文件存放位置:

在resources的static下遍蟋,正常來說,是沒有問題的螟凭。但是spring boot打成jar包后的路徑和war包的路徑是不一樣的虚青。文件是在BOOT-INF下的。如下圖:

編輯

?

直接獲取螺男,是不行的棒厘。找到原因后,我們就來想辦法解決掉下隧。

解決步驟:

1:修改文件存放位置奢人。

如凱哥,直接就放在了resources下淆院,文件名稱為:ueditor-config.json(這個(gè)文件名字何乎,在后面需要用到)。如下圖:

編輯

?

2:在yml文件中土辩,配置ueditor-config.json的文件名:

uEditorConfig:

fileName:?ueditor-config.json

如下圖:

編輯

?

3:編寫一個(gè)controller(ps:JSP的凱哥沒有使用支救,修改成了controller.這樣符合習(xí)慣)

3.1:獲取json文件名稱

需要注意:把第二步配置的文件名稱,獲取到拷淘。如下圖:

編輯

?

3.2:編寫獲取json的類(上傳的也寫在了里面)各墨。如下圖:

編輯

?

4:修改Ueditor的源碼

4.1:ActionEnter類的構(gòu)造方法重寫。

/**

*?獲取config.json的

*?@param?request

*?@param?rootPath

*?@param?configFileName

*/

public?ActionEnter?(HttpServletRequest?request,?String?rootPath,String?configFileName?)?{

this.request?=?request;

this.rootPath?=?rootPath;

this.actionType?=?request.getParameter(?"action"?);

this.contextPath?=?request.getContextPath();

this.configManager?=?ConfigManager.getInstance(?this.rootPath,?this.contextPath,?request.getRequestURI(),configFileName?);

}

如下圖:

編輯

?

4.2:重寫ConfigManager.getInstance方法

/**

*?配置管理器構(gòu)造工廠--修改后

*?@param?rootPath?服務(wù)器根路徑

*?@param?contextPath?服務(wù)器所在項(xiàng)目路徑

*?@param?uri?當(dāng)前訪問的uri

*?@param?configFileName?config.json的文件名稱

*?@return?配置管理器實(shí)例或者null

*/

public?static?ConfigManager?getInstance?(?String?rootPath,?String?contextPath,?String?uri,String?configFileName??)?{

try?{

return?new?ConfigManager(rootPath,?contextPath,?uri,configFileName);

}?catch?(?Exception?e?)?{

return?null;

}

}

如下圖:

編輯

?

4.3:重寫ConfigManager構(gòu)造器

/*

*?通過一個(gè)給定的路徑構(gòu)建一個(gè)配置管理器启涯,?該管理器要求地址路徑所在目錄下必須存在config.properties文件--kaigejava修改

*/

private?ConfigManager?(?String?rootPath,?String?contextPath,?String?uri,String?configFileName)?throws?FileNotFoundException,?IOException?{

rootPath?=?rootPath.replace(?"\\",?"/"?);

this.rootPath?=?rootPath;

this.contextPath?=?contextPath;

this.configFileName?=?configFileName;

if?(?contextPath.length()?>?0?)?{

this.originalPath?=?this.rootPath?+?uri.substring(?contextPath.length()?);

}?else?{

this.originalPath?=?this.rootPath?+?uri;

}

this.initEnv();

}

如下圖:

編輯

?

private?void?initEnv?()?throws?FileNotFoundException,?IOException?{

File?file?=?new?File(?this.originalPath?);

if?(?!file.isAbsolute()?)?{

file?=?new?File(?file.getAbsolutePath()?);

}

this.parentPath?=?file.getParent();

//String?configContent?=?this.readFile(?this.getConfigPath()?);

String?configContent?=?this.filter(IOUtils.toString(this.getClass().getClassLoader().getResourceAsStream(configFileName),"UTF-8"));

try{

JSONObject?jsonConfig?=?JSONObject.parseObject(configContent);

this.jsonConfig?=?jsonConfig;

}?catch?(?Exception?e?)?{

this.jsonConfig?=?null;

}

}

其中核心的:

?String?configContent?=?this.filter(IOUtils.toString(this.getClass().getClassLoader().getResourceAsStream(configFileName),"UTF-8"));

修改后贬堵,如下圖:

編輯

?

把ueditor.config.js文件的serverUrl修改成第一步編寫的controller對應(yīng)的url.如下圖:

編輯

?

修改完成之后,重新打包之后逝嚎,部署完成,發(fā)布訪問試試看详恼。就可以了补君。

源碼獲取:凱哥Java(kaigejava)昧互,回&|復(fù):kaige-cms挽铁。即可獲取本系統(tǒng)源碼了.blog體驗(yàn)域名:www|jiahaoyou|net伟桅。將|換成.

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末,一起剝皮案震驚了整個(gè)濱河市叽掘,隨后出現(xiàn)的幾起案子楣铁,更是在濱河造成了極大的恐慌,老刑警劉巖更扁,帶你破解...
    沈念sama閱讀 222,183評論 6 516
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件盖腕,死亡現(xiàn)場離奇詭異,居然都是意外死亡浓镜,警方通過查閱死者的電腦和手機(jī)溃列,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 94,850評論 3 399
  • 文/潘曉璐 我一進(jìn)店門,熙熙樓的掌柜王于貴愁眉苦臉地迎上來膛薛,“玉大人听隐,你說我怎么就攤上這事『遄模” “怎么了雅任?”我有些...
    開封第一講書人閱讀 168,766評論 0 361
  • 文/不壞的土叔 我叫張陵,是天一觀的道長咨跌。 經(jīng)常有香客問我沪么,道長,這世上最難降的妖魔是什么虑润? 我笑而不...
    開封第一講書人閱讀 59,854評論 1 299
  • 正文 為了忘掉前任成玫,我火速辦了婚禮,結(jié)果婚禮上拳喻,老公的妹妹穿的比我還像新娘哭当。我一直安慰自己,他們只是感情好冗澈,可當(dāng)我...
    茶點(diǎn)故事閱讀 68,871評論 6 398
  • 文/花漫 我一把揭開白布钦勘。 她就那樣靜靜地躺著,像睡著了一般亚亲。 火紅的嫁衣襯著肌膚如雪彻采。 梳的紋絲不亂的頭發(fā)上,一...
    開封第一講書人閱讀 52,457評論 1 311
  • 那天捌归,我揣著相機(jī)與錄音肛响,去河邊找鬼。 笑死惜索,一個(gè)胖子當(dāng)著我的面吹牛特笋,可吹牛的內(nèi)容都是我干的。 我是一名探鬼主播巾兆,決...
    沈念sama閱讀 40,999評論 3 422
  • 文/蒼蘭香墨 我猛地睜開眼猎物,長吁一口氣:“原來是場噩夢啊……” “哼虎囚!你這毒婦竟也來了?” 一聲冷哼從身側(cè)響起蔫磨,我...
    開封第一講書人閱讀 39,914評論 0 277
  • 序言:老撾萬榮一對情侶失蹤淘讥,失蹤者是張志新(化名)和其女友劉穎,沒想到半個(gè)月后堤如,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體蒲列,經(jīng)...
    沈念sama閱讀 46,465評論 1 319
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 38,543評論 3 342
  • 正文 我和宋清朗相戀三年煤惩,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了嫉嘀。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片。...
    茶點(diǎn)故事閱讀 40,675評論 1 353
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡魄揉,死狀恐怖剪侮,靈堂內(nèi)的尸體忽然破棺而出,到底是詐尸還是另有隱情洛退,我是刑警寧澤瓣俯,帶...
    沈念sama閱讀 36,354評論 5 351
  • 正文 年R本政府宣布,位于F島的核電站兵怯,受9級特大地震影響彩匕,放射性物質(zhì)發(fā)生泄漏。R本人自食惡果不足惜媒区,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 42,029評論 3 335
  • 文/蒙蒙 一驼仪、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧袜漩,春花似錦绪爸、人聲如沸。這莊子的主人今日做“春日...
    開封第一講書人閱讀 32,514評論 0 25
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽。三九已至座掘,卻和暖如春递惋,著一層夾襖步出監(jiān)牢的瞬間,已是汗流浹背溢陪。 一陣腳步聲響...
    開封第一講書人閱讀 33,616評論 1 274
  • 我被黑心中介騙來泰國打工萍虽, 沒想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留,地道東北人形真。 一個(gè)月前我還...
    沈念sama閱讀 49,091評論 3 378
  • 正文 我出身青樓杉编,卻偏偏與公主長得像,于是被迫代替她去往敵國和親。 傳聞我的和親對象是個(gè)殘疾皇子王财,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 45,685評論 2 360