title: springboot和vue的工程化實踐之分分合合 tags:
由於現在普遍的前後端分離開發 【前端vuejs 後端springboot】那麼存在如下工程化問題:
目前springboot採用fatjar的形式發布
vue通過nodejs執行
發布時vue打包出來的結果沒有後端支援將無法訪問
存在如下的方案
開發時將前後端專案聯合開發,前端**存在後端的子目錄下【不建議】
開發時vue使用vue-cli的純粹前端方案 部署時將生成的**copy到後端專案中
我們建議採用方案2,但是部署時不建議copy【不利於工程化的實踐】
我們採用如下方式進行工程化的實踐。【將vue**copy到static資料夾下同樣道理】
我們定義vue訪問時採用固定字首【比如ui】
訪問ui目錄時通過springboot後端重定向到指定目錄檔案【更好的方案在生產上建議使用cdn或者nginx】
我們考慮增加springboot的resourcehandler
定義對應對映關係
resource.resource-handler-list[0].pattern=/ui/**
resource.resource-handler-list[0].location=file:/users/qixiaobo/downloads/
複製**
定義具體對應類
/**
* @author qixiaobo
*/public
class
resourcehandler
public
void
setpattern
(string pattern)
public string getlocation
()
public
void
setlocation
(string location)
}複製**
定義配置檔案
/**
* @author qixiaobo
*/@configurationproperties(prefix = "resource", ignoreunknownfields = true)
public
class
resourcehandlerconfig
public
void
setresourcehandlerlist
(listresourcehandlerlist)
}@override
public
void
addresourcehandlers
(resourcehandlerregistry registry)
}@bean
public resourcehandlerconfig resourcehandlerconfig
()複製**
如上我們就完成了對映關係
這樣就能訪問到指定的檔案
springBoot和vue後台整合
版本資訊 spring boot 2.4.3 vue 2.6.11 configuration public class mvcconfig extends webmvcconfigurationsupport 到這裡就可以使用backend.com index.html訪問了 controller...
解決springboot和vue中的跨域問題
二.vue 2.註冊到main.js 3.發起請求 1.引入pom檔案 新增springboo和lombok依賴org.springframework.boot spring boot starter parent 2.0.6.release org.springframework.boot spr...
springboot和vue前後端分離跨域配置
1,後端配置 package org.lht.boot.security.server.common.config import org.springframework.context.annotation.bean import org.springframework.context.annota...