步驟:表結構->web.xml->mvc->db->spring ioc->log->**
先了解專案資料庫的表結構,這個方面是最容易忘記的,有時候我們只顧著看每乙個方法是怎麼進行的,卻沒有去了解資料庫之間的主外來鍵關聯。其實如果先了解資料庫表結構,再去看乙個方法的實現會更加容易。
然後需要過一遍web.xml,知道專案中用到了什麼***,***,過濾器,擁有哪些配置檔案。如果是***,一般負責過濾請求,進行aop等;如果是***,可能是定時任務,初始化任務;配置檔案有如 使用了spring後的讀取mvc相關,db相關,service相關,aop相關的檔案。
檢視***,*****,知道攔截了什麼請求,這個類完成了怎樣的工作。有的人就是因為缺少了這一步,自己寫了乙個action,配置檔案也沒有寫錯,但是卻怎麼除錯也無法進入這個action,直到別人告訴他,請求被攔截了。
接下來,看配置檔案,首先一定是mvc相關的,如springmvc中,要請求哪些請求是靜態資源,使用了哪些view策略,controller註解放在哪個包下等。然後是db相關配置檔案,看使用了什麼資料庫,使用了什麼orm框架,是否開啟了二級快取,使用哪種產品作為二級快取,事務管理的處理,需要掃瞄的實體類放在什麼位置。最後是spring核心的ioc功能相關的配置檔案,知道介面與具體類的注入大致是怎樣的。當然還有一些如apectj等的配置檔案,也是在這個步驟中完成
log相關檔案,日誌的各個級別是如何處理的,在哪些地方使用了log記錄日誌
從上面幾點後知道了整個開源專案的整體框架,閱讀每個方法就不再那麼難了。
當然如果有專案配套的開發文件也是要閱讀的。
獲取規則url(正規表示式) -> 模擬請求(如httpclient get請求)-> 獲取列表頁html -> 獲取資訊頁 -> 傳送請求 -> 資訊頁html -> 根據規則擷取相應的字段資訊 -> 對欄位進行清理(如壓縮) -> 靜態化(儲存到資料庫)
開發專案是需要學會寫架構文件,而不是只是做乙個碼農
包含以下內容:
模組分級,各模組關係,各模組負責人
各模組時序圖
各模組表結構
協議文件(介面文件)
每個負責人工作計畫
下發任務後每個模組的負責人用開發工具畫出自己的時序圖,表結構和介面文件,最後彙總到總專案負責人處。
資料庫是否分表問題:用分表的方式管理表有時並不合理,如果讀的壓力高是不值得的,可能更慢。如果寫併發高就行(以千萬級別為準)。 讀是按快取的,快取密度在95%以上是比較保險的。讀的優化:讀單條資訊,只需搜到這個id,然後直接從快取中拿,快取用id做快取,查id的效率是很高的
cms=模板+資料:可以通過只有一套自己的模板(如用freemarker),傳送請求獲取json資料填入資訊。cms有模板通過把資料填入模板即形成乙個網頁。
計算機瀏覽器的網頁內容要在手機上檢視,需要做到響應式html
爬蟲的核心是多執行緒的任務管理,抓取分頁列表內容。
JavaWeb開發總結
頁面開發總結 一 布局 根據同乙個頁面不同區域的功能不同,劃分為多個區域 1.頁面區域有多少,就可以有多少塊針對性的 區 2.頁面不同區域之間連線的唯一標識可以定義為全域性變數 3.公共類可以抽象為乙個js 4.對應的後台 也可以劃分為多個不同的 區 5.後台 可以按照表劃分區域或者按照功能劃分區域...
Java web開發學習
使用eclipse開發web 持續更新中。一 開發環境 作業系統 windows7 64位 開發工具 eclipse 4.4.0 伺服器 tomcat 8.0 二 遇到問題 1.修改檔案後,啟動serversr失敗。解決方法 修改engine中的defaulthost的localhost為你的網域名...
專案開發總結
有時候一些奇怪的想法會突然出現在腦海中,那一瞬間彷彿有所領悟 本篇中所分析的所有內容都是以中小型專案為前提的,ios,android,server這3端開發人數不超過20人。由於我本身是做ios的,因此,會從乙個ios開發者的角度來剖析問題。不一定百分百正確。因此,需要有乙個方案上的設計,這個設計的...