最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

spring boot 若依系統(tǒng)整合Ueditor部署時上傳圖片錯誤問題

 更新時間:2020年10月08日 08:43:26   作者:kaizi1992  
這篇文章主要介紹了spring boot 若依系統(tǒng)整合Ueditor部署時上傳圖片錯誤問題,本文給大家分享問題解決方法,對大家的學習或工作具有一定的參考借鑒價值,需要的朋友可以參考下

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

后臺部分截圖:

編輯​

編輯​

編輯​

編輯​

前臺blog截圖:

編輯​

編輯​

看上去還可以不錯,于是clone下來玩玩,結(jié)果發(fā)現(xiàn),發(fā)布文章的時候,編輯器有問題,上傳不了圖片,還有其他幾個地方有問題,怎么解決呢?自己上手擼代碼,修改唄。于是,下載了ueditor的源碼,加到項目中,進行修改。現(xiàn)在已經(jīng)修改完成,并且也發(fā)布到的服務(wù)器上了,歡迎大家訪問測試。文末會有凱哥修改后的git地址o~

正文:

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

出現(xiàn)這種情況,可以很負責任的告訴你99%是因為,在加載的時候,沒有獲取到ueditor的config.json文件。怎么處理了?

分析原因:

查看原來文件存放位置:

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

編輯​

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

解決步驟:

1:修改文件存放位置。

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

編輯​

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

uEditorConfig:
fileName:ueditor-config.json

如下圖:

編輯​

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

3.1:獲取json文件名稱

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

編輯​

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

編輯​

4:修改Ueditor的源碼

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

/**
*獲取config.json的
*@paramrequest
*@paramrootPath
*@paramconfigFileName
*/
publicActionEnter(HttpServletRequestrequest,StringrootPath,StringconfigFileName){
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)造工廠--修改后
*@paramrootPath服務(wù)器根路徑
*@paramcontextPath服務(wù)器所在項目路徑
*@paramuri當前訪問的uri
*@paramconfigFileNameconfig.json的文件名稱
*@return配置管理器實例或者null
*/
publicstaticConfigManagergetInstance(StringrootPath,StringcontextPath,Stringuri,StringconfigFileName){

try{
returnnewConfigManager(rootPath,contextPath,uri,configFileName);
}catch(Exceptione){
returnnull;
}

}

如下圖:

編輯​

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

/*
*通過一個給定的路徑構(gòu)建一個配置管理器,該管理器要求地址路徑所在目錄下必須存在config.properties文件--kaigejava修改
*/
privateConfigManager(StringrootPath,StringcontextPath,Stringuri,StringconfigFileName)throwsFileNotFoundException,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();
}

如下圖:

編輯​

privatevoidinitEnv()throwsFileNotFoundException,IOException{

Filefile=newFile(this.originalPath);

if(!file.isAbsolute()){
file=newFile(file.getAbsolutePath());
}

this.parentPath=file.getParent();

//StringconfigContent=this.readFile(this.getConfigPath());
StringconfigContent=this.filter(IOUtils.toString(this.getClass().getClassLoader().getResourceAsStream(configFileName),"UTF-8"));
try{
JSONObjectjsonConfig=JSONObject.parseObject(configContent);
this.jsonConfig=jsonConfig;
}catch(Exceptione){
this.jsonConfig=null;
}

}

其中核心的:

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

修改后,如下圖:

編輯​

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

編輯​

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

到此這篇關(guān)于spring boot 若依系統(tǒng)整合Ueditor部署時上傳圖片錯誤問題的文章就介紹到這了,更多相關(guān)spring boot上傳圖片錯誤內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • 在java中用Scanner類讀入單個字符的方法

    在java中用Scanner類讀入單個字符的方法

    今天小編就為大家分享一篇在java中用Scanner類讀入單個字符的方法,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2018-07-07
  • springMVC返回復雜的json格式數(shù)據(jù)方法

    springMVC返回復雜的json格式數(shù)據(jù)方法

    下面小編就為大家分享一篇springMVC返回復雜的json格式數(shù)據(jù)方法,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2018-03-03
  • IDEA生成標準JavaBean的幾種方法總結(jié)

    IDEA生成標準JavaBean的幾種方法總結(jié)

    標準javaBean是定義一個類的標準結(jié)構(gòu),下面這篇文章主要給大家總結(jié)介紹了關(guān)于IDEA生成標準JavaBean的幾種方法,文中通過圖文以及代碼介紹的非常詳細,需要的朋友可以參考下
    2024-03-03
  • SpringBoot+Mybatis-plus實現(xiàn)分頁查詢的示例代碼

    SpringBoot+Mybatis-plus實現(xiàn)分頁查詢的示例代碼

    本文主要介紹了SpringBoot+Mybatis-plus實現(xiàn)分頁查詢的示例代碼,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧
    2025-02-02
  • Java使用Knife4j優(yōu)化Swagger接口文檔的操作步驟

    Java使用Knife4j優(yōu)化Swagger接口文檔的操作步驟

    在現(xiàn)代微服務(wù)開發(fā)中,接口文檔的質(zhì)量直接影響了前后端協(xié)作效率,Swagger 作為一個主流的接口文檔工具,雖然功能強大,但其默認界面和部分功能在實際使用中略顯不足,而 Knife4j 的出現(xiàn)為我們提供了一種增強的選擇,本篇文章將詳細介紹如何在項目中集成和使用 Knife4j
    2024-12-12
  • Java中InputSteam怎么轉(zhuǎn)String

    Java中InputSteam怎么轉(zhuǎn)String

    面了一位實習生,叫他給我說一下怎么把InputStream轉(zhuǎn)換為String,這種常規(guī)的操作,他竟然都沒有用過我準備結(jié)合工作經(jīng)驗,整理匯集出了InputStream 到String 轉(zhuǎn)換的十八般武藝,助大家闖蕩 Java 江湖一臂之力,需要的朋友可以參考下
    2021-06-06
  • springmvc使用@notNull注解驗證請求參數(shù)方式

    springmvc使用@notNull注解驗證請求參數(shù)方式

    這篇文章主要介紹了springmvc使用@notNull注解驗證請求參數(shù)方式,具有很好的參考價值,希望對大家有所幫助,如有錯誤或未考慮完全的地方,望不吝賜教<BR>
    2024-01-01
  • java天數(shù)計算函數(shù)(當前月天數(shù)、某月總天數(shù)及某月剩余天數(shù))4種方法實現(xiàn)代碼

    java天數(shù)計算函數(shù)(當前月天數(shù)、某月總天數(shù)及某月剩余天數(shù))4種方法實現(xiàn)代碼

    日常開發(fā)中會遇到關(guān)于日期的計算,比如當月的天數(shù)、兩日期之間的天數(shù)、當月剩余天數(shù)等等,這篇文章主要給大家介紹了關(guān)于java天數(shù)計算函數(shù)(當前月天數(shù)、某月總天數(shù)及某月剩余天數(shù))4種方法實現(xiàn)的相關(guān)資料,需要的朋友可以參考下
    2023-10-10
  • Java使用代碼模擬高并發(fā)操作的示例

    Java使用代碼模擬高并發(fā)操作的示例

    本篇文章主要介紹了Java使用代碼模擬高并發(fā)操作的示例,Java通過代碼模擬高并發(fā)可以以最快的方式發(fā)現(xiàn)我們系統(tǒng)中潛在的線程安全性問題,小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2018-05-05
  • 淺談java中為什么實體類需要實現(xiàn)序列化

    淺談java中為什么實體類需要實現(xiàn)序列化

    下面小編就為大家?guī)硪黄獪\談java中為什么實體類需要實現(xiàn)序列化。小編覺得挺不錯的,現(xiàn)在就分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2017-05-05

最新評論

临清市| 永川市| 宿迁市| 师宗县| 潼关县| 陆良县| 兴义市| 邵东县| 铜鼓县| 曲松县| 会昌县| 如东县| 中西区| 黔江区| 桦南县| 平利县| 泸州市| 桐庐县| 四会市| 沧州市| 庄河市| 兴义市| 叶城县| 新昌县| 莱阳市| 盐津县| 阿合奇县| 鸡东县| 大港区| 凉城县| 肇源县| 康平县| 长武县| 应用必备| 博客| 会昌县| 鄢陵县| 兴安盟| 介休市| 平昌县| 上栗县|