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

歡迎訪問 生活随笔!

生活随笔

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

编程问答

种子项目详解

發布時間:2023/12/31 编程问答 30 豆豆
生活随笔 收集整理的這篇文章主要介紹了 种子项目详解 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

引言

在上一篇文章簡單講解了種子項目搭建,但是項目搭建起來是為了方便我們后續開發的。因此了解整個項目的架構,以及各個Maven模塊是如何各司其職、相互依賴,是至關重要的。

這里分成兩塊介紹

  • lenosp自帶的內容
  • 新增擴展的內容

lenosp自帶的內容

首先我們看看lenosp腳手架自帶的Maven模塊有哪些

  • len-admin:這是博客管理員的模塊,這里用不上,不管
  • len-blog:這是博客模塊,同上
  • len-core
  • len-sys
  • len-web

下面主要講講len-core、len-sys、len-web這三個模塊。

len-core

何謂core?core在英文中的意思是核心、要點,而在該項目中,len-core也是整個項目的核心。我們先來看看文件結構

可以看到,這里有四個大包base、exception、freemarker、redis,以及一個util工具包,還有一個validator參數校驗分組接口包。

base包

base即基礎,也就是抽取通用部分封裝成的基礎類,讓其他類去繼承之,減少重復代碼。這里有通用Mapper的配置(BaseMapper),以及service層通用的方法(BaseService),而BaseController中則有權限異常處理、時間格式化和ajax請求的判斷。

至于下面的三個Currentxxx則是后臺管理系統的菜單、角色、用戶實體類。剩下兩個不知道…

exception包

該包下是自定義的一些異常,以及統一異常處理類GlobalExceptionHandler。

freemarker包

該包下是Freemarker模板引擎的一些配置。

redis包

redis的一些常用方法封裝,例如get\set\del

util包

這里有很多工具類,其中的功能大都可以顧名思義。這里就不詳細展開講了。

validator

校驗分組接口定義。有時候一個類對于不同的接口需要定義多種不同的校驗方式,例如add不需要id,而update需要id,這里可以使用接口區別校驗。

pom.xml

每個Maven模塊都會帶的xml配置文件,用于引入依賴、管理多模塊依賴。以下就不再敘述。

len-sys

sys是系統的縮寫。這里也就是系統運行所依賴的類集合。文件結構如下:

學過Javaweb三層架構的同學應該很清楚了,controller、service、mapper即分別對應三層。而entity是實體類。下面再來看看core包

core包

  • annotation

    注解定義,這里是日志注解的定義。用于接口上,采集日志。

  • BootListener

    監聽器,用于監聽定時任務執行情況、bean初始化情況以及Servlet初始化情況。

  • filter

    過濾器,包括后臺管理系統登錄所需的驗證碼攔截、校驗用戶是否已授權

  • quartz

    定時任務定義、配置,具體不說。

  • shiro

    shiro安全框架登錄認證LoginRealm定義,以及Principal用戶主體、RetryLimitCredentialsMatcher驗證器,限制嘗試登陸次數,防止暴力破解

resources

看完core我們繼續看resources,學過SpringBoot的同學都知道這是放資源文件的地方。

  • ftl

    該包是存放ftl后綴的模塊頁面的文件夾

  • mapper

    存放mapper.xml文件的文件夾

  • plugin

    存放前端使用的框架的文件夾,例如bookstrap、layui…

len-web

該模塊是也就是我們所說的controller層的一些配置以及application.yml的配置。

挑幾個懂的出來說說

  • CorsConfig:配置跨域
  • pageHelperConfig:此方案可替代 application.yml中 pagehelper配置
  • SwaggerConfig:Swagger接口文檔配置
  • WebMavConfig:攔截器資源放行以及圖片上傳路徑定義
  • TransactionalConfig:事務配置
  • ShiroConfig:Shiro安全框架配置
  • DruidConfig:數據源Druid配置

差不多就這些吧。可以自己點進源碼詳細看看

自己擴展的模塊

我們使用lenosp腳手架當然是為了方便開發,而我們開發可以自己新開模塊再開發,而不要和腳手架自帶的模塊混雜在一起,顯得混亂。

這五個模塊其實很好理解了,就是三層架構拆分成了Maven多模塊開發,不用多說了吧。

后記

最后,再講講幾個注意的點。

  • 因為用到了Maven多模塊開發,所以各模塊的依賴關系要理清楚。否則編譯運行可能都不能通過
  • 啟動在len-web中的Application啟動類的主方法中
  • 數據庫等yml配置也在len-web模塊

至此,我們可以安心開發了0.0

總結

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

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