Java Web項目開發項目經驗總結

一:學會如何讀一個JavaWeb項目源代碼

步驟:表結構->web.xml->mvc->db->spring ioc->log->代碼

1、先了解項目數據庫的表結構,這個方面是最容易忘記的,有時候我們只顧着看每一個方法是怎麼進行的,卻沒有去了解數據庫之間的主外鍵關聯。其實如果先了解數據庫表結構,再去看一個方法的實現會更加容易。

2、然後需要過一遍web.xml,知道項目中用到了什麼攔截器,監聽器,過濾器,擁有哪些配置文件。如果是攔截器,一般負責過濾請求,進行AOP等;如果是監 聽器,可能是定時任務,初始化任務;配置文件有如 使用了spring後的讀取mvc相關,db相關,service相關,aop相關的文件。

3、查看攔截器,監聽器代碼,知道攔截了什麼請求,這個類完成了怎樣的工作。有的人就是因爲缺少了這一步,自己寫了一個action,配置文件也沒有寫錯,但是卻怎麼調試也無法進入這個action,直到別人告訴他,請求被攔截了。

4、接下來,看配置文件,首先一定是mvc相關的,如springmvc中,要請求哪些請求是靜態資源,使用了哪些view策略,controller註解放在哪個包下等。如果你想學習java可以來這個羣,首先是二二零,中間是一四二,最後是九零六,裏面有大量的學習資料可以下載。

然後是db相關配置文件,看使用了什麼數據庫,使用了什麼orm框架,是否開啓了二級緩存,使用哪種產品作爲二級緩存,事務管理的處理,需要掃描的實體類放在什麼位置。最後是spring核心的ioc功能相關的配置文件,知道接口與具體類的注入大致是怎樣的。當然還有一些如apectj等的配 置文件,也是在這個步驟中完成

5、log相關文件,日誌的各個級別是如何處理的,在哪些地方使用了log記錄日誌

6、從上面幾點後知道了整個開源項目的整體框架,閱讀每個方法就不再那麼難了。

7、當然如果有項目配套的開發文檔也是要閱讀的。

二:爬蟲是如何實現的:

獲取規則url(正則表達式)

-> 模擬請求(如httpclient get請求)

-> 獲取列表頁html

-> 獲取信息頁

-> 發送請求

-> 信息頁html

-> 根據規則截取相應的字段信息

-> 對字段進行清理(如圖片壓縮)

-> 靜態化(存儲到數據庫)

Java Web項目開發項目經驗總結

三:架構文檔

開發項目是需要學會寫架構文檔,而不是隻是做一個碼農

包含以下內容:

1、模塊分級,各模塊關係,各模塊負責人

2、各模塊時序圖

3、各模塊表結構

4、協議文檔(接口文檔)

5、每個負責人工作計劃

下發任務後每個模塊的負責人用開發工具畫出自己的時序圖,表結構和接口文檔,最後彙總到總項目負責人處。

Java Web項目開發項目經驗總結

Java Web項目開發項目經驗總結

四:其它

1、數據庫是否分表問題:用分表的方式管理表有時並不合理,如果讀的壓力高是不值得的,可能更慢。如果寫併發高就行(以千萬級別爲準)。 讀是按緩存的,緩存密度在95%以上是比較保險的。

讀的優化:讀單條信息,只需搜到這個id,然後直接從緩存中拿,緩存用id做緩存,查id的效率是很高的。

2、CMS=模板+數據:可以通過只有一套自己的模板(如用freemarker),發送請求獲取json數據填入信息。CMS有模板通過把數據填入模板即形成一個網頁。

3、計算機瀏覽器的網頁內容要在手機上查看,需要做到響應式HTML。

4、如通過抓取網頁內容放到app上顯示,需要做的內容:圖片大小自適應,內容儘量保真,校驗內容是否丟失,鏈接需要替換的需要進行替換,html標籤替換

5、爬蟲的核心是多線程的任務管理,抓取分頁列表內容。

6、微信公衆號上是如何綁定用戶讓用戶只登錄一次,下次不用登陸?

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