如何快速理解Web項目

入職後發現企業中的項目往往和自己接觸的稍微不同,需要理解好配置文件,而不是像以往一樣直接上網down一個配置文件,企業中的項目很多類都是自己書寫的與業務十分緊密關聯。
企業中,項目的分離,可能調用服務調用數據庫,不同的項目結構大同小異,但是基本原理還是一樣的。
下文將介紹如何快速理解一個基於Spring的JavaWeb項目。

總述

公司的項目往往具有測試,開發,生產的等多種環境,項目的運行部署在內網內,大多數人開始接觸的項目都是公司整體項目的一小塊,根據公司大項目的 開發文檔,需求文檔查看整體業務,大的技術框架,再開始進行自己的Web項目研究。
其中我們的web項目設計不會脫離規範,可以根據查看順序去梳理業務細節。
查看順序:配置文件→依賴文件→MVC(配合開發者工具走通 一個邏輯)→配合參數類進行業務熟悉。
最後對於緩存,其他接口的實現,分佈式架構等可以先不關注,後期發展,走好第一步。

web.xml

Web.xml文件是項目核心配置文件。
首部:xml書寫規則的Schema文件。
主體配置:基本項目依賴文件,Servlet配置,監聽器,過濾器,session超時,歡迎錯誤頁面等。

上下文[context-param]
作用:該元素用來聲明應用範圍(整個WEB項目)內的上下文初始化參數。
param-name 設定上下文的參數名稱。必須是唯一名稱
param-value 設定的參數名稱的值。

selvert配置,所有URL請求都將被Spring MVC的DispatcherServlet截獲。。

  <servlet>
        <servlet-name>Dispatch</servlet-name>
        <servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class>
        <load-on-startup>1</load-on-startup>
  </servlet>
 <!--"/"路徑型配置, 請求是否加後綴都可以 -->
  <servlet-mapping>
        <servlet-name>Dispatch</servlet-name>
        <url-pattern>/</url-pattern>
  </servlet-mapping>

注:命名中默認文件路徑爲/WEB-INF/[servlet-name取的名字]-servlet.xml

監聽器[listener]
一個Java類用來監聽其他的JavaBean的變化,在javaweb中監聽器就是監聽三個域對象的狀態(request,session,servletContext)。

過濾器[Filter]
實際上就是對web資源進行攔截,做一些處理後再交給下一個過濾器或servlet處理
通常都是用來攔截request進行處理的,也可以對返回的response進行攔截處理
作用:自動登錄,統一設置編碼格式,訪問權限控制,敏感字符過濾等。

安全限制[security-constraint]
之前未接觸,限制用戶的方法訪問相應的資源。

會話參數[Session]
設置會話()過期時間,其中時間以分鐘爲單位,假如設置60分鐘超時:

<session-config> 
<session-timeout>60</session-timeout> 
</session-config>

web.xml文件一般位於項目的WEB-INF目錄下。
web.xml位置

web.xml加載過程:https://blog.csdn.net/ahou2468/article/details/79015251
順序是:->->->。其中,如果web.xml中出現了相同的元素,則按照在配置文件中出現的先後順序來加載。

Spring配置文件

不詳細介紹Spring構造Bean的具體參數,以及配置信息。

DispatcherServlet配置

DispatcherServlet是Spring提供的前置處理器服務,本質是Servlet,集中處理來自用戶的HTTP請求。
一般配置內容:基本掃描Bean,mvc資源處理(攔截器,靜態資源)
DispatcherServlet配置文件

Spring其他配置

一般在resources文件夾下,具有Spring需要裝載的Bean屬性配置,可以多文件設計。

spring Bean配置詳解:https://www.jianshu.com/p/b9f450fdd69a

Spring的相關配置可以讓我們瞭解系統的裝載類(核心業務相關類),掃描域,攔截器可以看到系統統一的業務數據處理。

pom.xml

Java項目一般會配合Maven,找到pom.xml文件快速找到項目依賴,可大體瞭解項目的技術框架和公司企業內部jar包。
pom.xml文件

Java目錄

爲企業項目的一個模擬文件路徑,雖然可能和常見的不同,但是本質是一樣的。
企業級項目一般公共部分具有常量定義(constants),配置參數(config),異常處理(exception),攔截器(interceptor),工具類(utils),驗證類(validation),模板引擎(view)。
通過MVC相關文件夾熟悉代碼:
域(domain)/對象(vo/entity):快速瞭解業務實體。
業務(handler/service/dao/mapper):具體處理業務。
控制器(controller):處理,數據控制業務跳轉。

注:handler可能調用服務,系統數據庫不透明。
同時可以根據其他參數類,枚舉類瞭解系統業務和參數含義。
例子如下:
Java目錄

其他

webapp:視圖相關文件目錄。
host文件:內網相關服務器配置,可能需要和公司員工索要。
其他配置文件:證書,服務器,日誌,框架等。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章