你這說的太籠統(tǒng)了,應(yīng)該具體些。
成都創(chuàng)新互聯(lián)公司-專業(yè)網(wǎng)站定制、快速模板網(wǎng)站建設(shè)、高性價比北鎮(zhèn)網(wǎng)站開發(fā)、企業(yè)建站全套包干低至880元,成熟完善的模板庫,直接使用。一站式北鎮(zhèn)網(wǎng)站制作公司更省心,省錢,快速模板網(wǎng)站建設(shè)找我們,業(yè)務(wù)覆蓋北鎮(zhèn)地區(qū)。費用合理售后完善,十余年實體公司更值得信賴。
有了Java代碼之后
1、可以在代碼中寫些測試的方法,把你想要驗證的東西,輸出看一下。
2、可以用Debug的形式,跟蹤代碼執(zhí)行,驗證程序的邏輯是否正確。
3、利用JUnit寫斷言,測試結(jié)果
一:學(xué)會如何讀一個JavaWeb項目源代碼 步驟:表結(jié)構(gòu)-web.xml-mvc-db-spring
ioc-log- 代碼
1、先了解項目數(shù)據(jù)庫的表結(jié)構(gòu),這個方面是最容易忘記 的,有時候我們只顧著看每一個方法是怎么進行的,卻沒
有去了解數(shù)據(jù)庫之間的主外鍵關(guān)聯(lián)。其實如果先了解數(shù)據(jù) 庫表結(jié)構(gòu),再去看一個方法的實現(xiàn)會更加容易。
2、然后需要過一遍web.xml,知道項目中用到了什么攔
截器,監(jiān)聽器,過濾器,擁有哪些配置文件。如果是攔截 器,一般負責(zé)過濾請求,進行AOP 等;如果是監(jiān) 可能是定時任務(wù),初始化任務(wù);配置文件有如使用了 spring
后的讀取mvc 相關(guān),db 相關(guān),service 相關(guān),aop 相關(guān)的文件。
3、查看攔截器,監(jiān)聽器代碼,知道攔截了什么請求,這
個類完成了怎樣的工作。有的人就是因為缺少了這一步, 自己寫了一個action,配置文件也沒有寫錯,但是卻怎么
調(diào)試也無法進入這個action,直到別人告訴他,請求被攔
4、接下來,看配置文件,首先一定是mvc相關(guān)的,如 springmvc
中,要請求哪些請求是靜態(tài)資源,使用了哪些 view 策略,controller 注解放在哪個包下等。 然后是db 相關(guān)配置文件,看使用了什么數(shù)據(jù)庫,使用了
什么orm框架,是否開啟了二級緩存,使用哪種產(chǎn)品作 為二級緩存,事務(wù)管理的處理,需要掃描的實體類放在什 么位置。最后是spring 核心的ioc
功能相關(guān)的配置文件, 知道接口與具體類的注入大致是怎樣的。當然還有一些如 apectj 置文件,也是在這個步驟中完成
5、log
相關(guān)文件,日志的各個級別是如何處理的,在哪些 地方使用了log 記錄日志
6、從上面幾點后知道了整個開源項目的整體框架,閱讀 每個方法就不再那么難了。
7、當然如果有項目配套的開發(fā)文檔也是要閱讀的。
1)盡量指定類、方法的final修飾符。帶有final修飾符的類是不可派生的,Java編譯器會尋找機會內(nèi)聯(lián)所有的final方法,內(nèi)聯(lián)對于提升Java運行效率作用重大,此舉能夠使性能平均提高50%。
2)盡量重用對象。由于Java虛擬機不僅要花時間生成對象,以后可能還需要花時間對這些對象進行垃圾回收和處理,因此生成過多的對象將會給程序的性能帶來很大的影響。
3)盡可能使用局部變量。調(diào)用方法時傳遞的參數(shù)以及在調(diào)用中創(chuàng)建的臨時變量都保存在棧中速度較快,其他變量,如靜態(tài)變量、實例變量等,都在堆中創(chuàng)建速度較慢。
4)慎用異常。異常對性能不利,只要有異常被拋出,Java虛擬機就必須調(diào)整調(diào)用堆棧,因為在處理過程中創(chuàng)建了一個新的對象。異常只能用于錯誤處理,不應(yīng)該用來控制程序流程。
5)乘法和除法使用移位操作。用移位操作可以極大地提高性能,因為在計算機底層,對位的操作是最方便、最快的,但是移位操作雖然快,可能會使代碼不太好理解,因此最好加上相應(yīng)的注釋。
6)盡量使用HashMap、ArrayList、StringBuilder,除非線程安全需要,否則不推薦使用 Hashtable、Vector、StringBuffer,后三者由于使用同步機制而導(dǎo)致了性能開銷。
盡量在合適的場合使用單例。使用單例可以減輕加載的負擔(dān)、縮短加載的時間、提高加載的效率,但并不是所有地方都適用于單例。
張小喜告別996 實現(xiàn)高效編程 減少開發(fā)壓力 開啟Java高效編程之門(完整版高清視頻)百度網(wǎng)盤 ?
鏈接:
提取碼: aizj 復(fù)制這段內(nèi)容后打開百度網(wǎng)盤手機App,操作更方便哦? ?
若資源有問題歡迎追問~ ?