日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

java springboot 搭建_springboot搭建java项目

發布時間:2025/3/20 编程问答 21 豆豆
生活随笔 收集整理的這篇文章主要介紹了 java springboot 搭建_springboot搭建java项目 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

搭建項目,離不開架構,一個好的架構可以讓開發事半功倍,技術是可替換的,思想是不變的,所以在越往后的技術生涯,你聽到更多的是某個技術的核心思想是怎么樣的,處理了什么問題。以上,共勉。

隨著開發的項目越來越多,越來越體會到項目搭建的重要性,一般情況下后臺需要提供:(移動端/網頁)接口服務,管理后臺接口服務,服務與服務之間的接口服務,怎么讓每個模塊都盡可能的復用,減少重復代碼。

這時就有人說了:“所有的接口服務我都放在一個項目里,這樣不管是service,實體類,工具類等都能共用,不就好了嗎?”

這個時候就引申了一個問題:在不影響其他的渠道服務的情況下更新某一個渠道服務,這樣是不是就會出現問題呢?因為你要更新,所以這個服務需要先停服,一旦停服其他渠道也是引用的這個服務,就會無法使用,并且這個項目會越來越大,框架會交錯,維護的成本也會越來越高,新人入手會使得上手困難。

怎么搭建更合適?

沒有最合適只有更合適,本篇文章只是個人的一個構思,如果您有更好的方式,歡迎評論

框架選型

SpringBoot 2.3.5.RELEASE

Mybatis-plus 3.4.1

Knife4j?2.0.7

Lombok

Maven

項目結構

template-server-v2 #父項目

- template-core #數據庫對應的entity,mapper,service,serviceImpl

- template-common #工具類

- template-service #業務處理

- template-controller #接口

工程包職責是怎么分配的

template-common

描述

主要承擔template-service的工具類,比如什么MD5,aes的工具類,一些redis的工具類啥的,會放在這里

template-core

描述

主要承擔了數據庫表對應實體類的映射以及增刪改查功。注意這里面是沒有任何業務處理的,只有生成的類。

pom.xml?里面集成了 mysql 以及 mybatis-plus 以及 druid,采用mybatis-plus的代碼生成插件可以快速的生成實體類service,以及mapper,更可以根據?自定義模板生成 不同的類 放在 不同的位置

template-core 主要是為了給 template-service 所有類的CRUD操作。

優點

采用mybatis-plus生成插件,不需要在idea上安裝任何東西,可快速生成實體類以及對應的crud,減去了手動創建的麻煩事,可以修改生成配置,也可自定義模板

template-service的工程包引用template-core,如果數據庫表字段新增或者變更,只需要修改?template-core 內對應的實體便可

template-service

描述

主要承擔了業務的完整操作。一般復雜的業務都是由幾張表的CRUD組成,因為引用了template-core,所以直接使用提供的CRUD對進行組合拼接成業務。

事務的處理也是在這里,并且 template-service 里面會有 Param 接口參數包以及 VO 視層結果包:主要是為了controller的接口參數的接收以及結果返回

優點

template-service 的抽離,使得 其他 controller 工程包可以引用,減少相同的代碼編寫,舉個例子:比如我們需要做一個商城,它具有PC版+APP版+小程序版,業務相同的情況下只是?controller 以及校驗規則不一樣。這個時候就發揮了抽離好處

template-controller

描述

主要承擔了接口供給,swagger文檔顯示,全局異常處理,結果集返回,請求日志保存,接口權限等有關接口處理的操作。這里不處理任何業務,做參數接收以及轉發到service

如果有app的接口,管理后臺的接口,pc的接口,小程序的接口,那么template-controller會對應有4個工程,可以是template-controller-app,template-controller-applets,template-controller-back,template-controller-pc,

相同的是:引用需要的?template-service?功能包;不同的是:接口校驗,登錄方式,接口文檔,日志記錄等。。。

優點

不同渠道接口的分離,使得他們不管是升級還是停服都不會相互影響,因為會打多個controller的項目包。

框架分離,比如我管理后臺之前用的是SpringSecurity,后面用的不爽了我要改成Shiro,只需要修改template-controller-back的工程包,與其他無關,愛咋搞咋搞,搞崩了也只是崩你自己的。沒毛病

維護性更高,新人來了需要把管理后臺的接口給到新人熟悉,只需要關注單一template-controller-back工程包,不會全部接口都擠在一起,新人頭疼,自己維護也懵逼

擴展性更好,如果template-controller-app需要做負載,那就做單一的工程包服務處理,其他不影響,

項目源碼

總結

以上是生活随笔為你收集整理的java springboot 搭建_springboot搭建java项目的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。