log與eclipse代碼重構(gòu)小技巧_第1頁
log與eclipse代碼重構(gòu)小技巧_第2頁
log與eclipse代碼重構(gòu)小技巧_第3頁
log與eclipse代碼重構(gòu)小技巧_第4頁
log與eclipse代碼重構(gòu)小技巧_第5頁
已閱讀5頁,還剩2頁未讀 繼續(xù)免費閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領

文檔簡介

1、1、 通過配置log配置文件,讓控制臺輸出更多自己代碼的日志log配置可以為xml、properties。由于在log4j2 中,取消properties配置,這里用xml配置<?xml version="1.0" encoding="UTF-8"?><!DOCTYPE log4j:configuration SYSTEM "log4j.dtd"><log4j:configuration xmlns:log4j='/log4j/'>&l

2、t;!- # appender # -><appender name="CONSOLE" class="org.apache.log4j.ConsoleAppender"><layout class="org.apache.log4j.PatternLayout"><!- "%dyyyy-MM-dd HH:mm:ss %-5p (%c:%L)- %m%n" -><param name="ConversionPattern" value="

3、%-5p %dyyyy-MM-dd HH:mm:ss .%M(%F:%L)- %m%n" /></layout><!-限制輸出級別 -><!- <filter class="org.apache.log4j.varia.LevelRangeFilter"> -><!- <param name="LevelMax" value="ERROR" /> -><!- <param name="LevelMin" value=

4、"debug" /> -><!- </filter> -></appender><!- additivity 是否繼承父logger的appender。這樣會放在日志重復輸出-><logger name="com.hiveview.test" additivity="false"><level value="debug" /><appender-ref ref="CONSOLE" /></log

5、ger><root><priority value="error" /><appender-ref ref="CONSOLE" /></root></log4j:configuration>root 級別設置成error,第三方的jar只有在error的時候會輸出內(nèi)容自己的包設置為debug級別,這樣在自己代碼中debug以上級別的日志都會輸出,方便調(diào)試。2、 通過調(diào)整log配置,可以讓在eclipse控制臺中快速定位代碼<appender name="CONSOLE&qu

6、ot; class="org.apache.log4j.ConsoleAppender"><layout class="org.apache.log4j.PatternLayout"><!- "%dyyyy-MM-dd HH:mm:ss %-5p (%c:%L)- %m%n" -><param name="ConversionPattern" value="%-5p %dyyyy-MM-dd HH:mm:ss .%M(%F:%L)- %m%n" />&l

7、t;/layout><!-限制輸出級別 -><!- <filter class="org.apache.log4j.varia.LevelRangeFilter"> -><!- <param name="LevelMax" value="ERROR" /> -><!- <param name="LevelMin" value="debug" /> -><!- </filter> ->

8、</appender>調(diào)整日志輸出格式在控制臺中,鼠標點擊括號中連接內(nèi)容時,會自動定位到代碼中,多個項目,代碼重復時可能會有問題,會定位到第一次定位的代碼位置上。3、 通過調(diào)整log配置,可以查看sql執(zhí)行時長,注入?yún)?shù)替換打印出來為方便調(diào)試sql與檢測sql執(zhí)行效率,sql調(diào)優(yōu),使用log4jdbc第三方jar。需要依賴slf4j。修改jdbc 配置jdbc.driver=net.sf.log4jdbc.DriverSpyjdbc.url=jdbc:log4jdbc:mysql:/localhost:3306/test?useUnicode=true&characterE

9、ncoding=UTF8&characterSetResults=UTF8修改log配置<logger name="jdbc.sqlonly" additivity="false"><level value="error"/></logger><logger name="jdbc.audit" additivity="false"><level value="error"/></logger>&l

10、t;logger name="jdbc.resultset" additivity="false"><level value="error"/></logger><logger name="jdbc.connection" additivity="false"><level value="error"/></logger><logger name="jdbc.sqltiming" ad

11、ditivity="false"><level value="info" /><appender-ref ref="CONSOLE" /></logger>jdbc 其他的設置為error級別,否則會打印更多信息,除非想看更多的內(nèi)容sqltimeing 設置為info級別,sql語句與運行時長,注入的參數(shù)會轉(zhuǎn)換為真實內(nèi)容4、 slf4j 與 common logging、logback、log4j、log4j 2 Commons-logging : apache最早提供的日志的門面接口。避免和

12、具體的日志方案直接耦合。類似于JDBC 的api 接口,具體的的JDBC driver 實現(xiàn)由各數(shù)據(jù)庫提供商實現(xiàn)。通過統(tǒng)一接口解耦,不過其內(nèi)部也實現(xiàn)了一些簡單日志方案。Log4j : 經(jīng)典的一種日志解決方案。內(nèi)部把日志系統(tǒng)抽象封裝成Logger 、appender 、pattern 等實現(xiàn)。我們可以通過配置文件輕松的實現(xiàn)日志系統(tǒng)的管理和多樣化配置。Log4j 2 是Log4j的升級版,與之前的版本Log4j 1.x相比、有重大的改進,在修正了Logback固有的架構(gòu)問題的同時,改進了許多Logback所具有的功能。Logback : LOGBack 作為一個通用可靠、快速靈活的日志框架,將作為

13、Log4j 的替代和SLF4J 組成新的日志系統(tǒng)的完整實現(xiàn)。官網(wǎng)上稱具有極佳的性能,在關(guān)鍵路徑上執(zhí)行速度是log4j 的10 倍,且內(nèi)存消耗更少。Slf4j : 全稱為Simple Logging Facade for JAVA:java簡單日志門面。 是對不同日志框架提供的一個門面封裝。可以在部署的時候不修改任何配置即可接入一種日志實現(xiàn)方案。類似jdbc,只做統(tǒng)一接口,具體實現(xiàn)由各日志框架去做配置Log4j(很詳細)log4j2-users-guide.pdf用log4jdbc監(jiān)控SQL的執(zhí)行情況5、 代碼重構(gòu)快捷鍵,方便、節(jié)省調(diào)整代碼時間a) 抽取屬性變量如代碼,有重復寫了好多aaaaaa. 的字符串,可以想象成同一個字符串被使用多次,這樣寫很明顯有些問題,不容易統(tǒng)一修改,如何快速抽取aaaa為一個變量?選擇aaaa.字符串,注意要有前后引號,alt+shift+L,會彈出抽取變量框,輸入自己定義的變量即可。b) 抽取方法一個方法塊很大,需要抽成不同的小方法,如何快速抽取,而且保證代碼的正確性?非copy方式,代碼中有不同的變量交叉,簡單copy很容易出錯誤。如代碼:需要把執(zhí)行查詢這塊單獨提出到方法中選擇需要提前方法的代碼塊,需要完整,不能少分號或者括號。Alt+shift+M,會彈出方法抽取

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
  • 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論