log4j2.xml相關配置

1.首先在pom中引入相關jar包apache

<dependency>
			<groupId>org.slf4j</groupId>
			<artifactId>slf4j-api</artifactId>
			<version>${slf4j.version}</version>
			<scope>compile</scope>
		</dependency>
		<dependency>
			<groupId>org.slf4j</groupId>
			<artifactId>slf4j-log4j12</artifactId>
			<version>${slf4j.version}</version>
			<scope>runtime</scope>
		</dependency>
		<dependency>
			<groupId>org.apache.logging.log4j</groupId>
			<artifactId>log4j-api</artifactId>
			<version>${log4j.version}</version>
		</dependency>
		<dependency>
			<groupId>org.apache.logging.log4j</groupId>
			<artifactId>log4j-core</artifactId>
			<version>${log4j.version}</version>
		</dependency>

2.配置相關的log4j2.xmlapi

<?xml version="1.0" encoding="UTF-8" ?>
<Configuration>
	<Appenders>
		<Console name="STDOUT" target="SYSTEM_OUT">
			<PatternLayout
				pattern="%d{yyyy-MM-dd HH:mm:ss} [%-5p %marker](%C:%L) %m%n" />
		</Console>
		<File name="FILE"
			fileName="${sys:catalina.home}/logs/日誌名字.log">
			<PatternLayout
				pattern="%d{yyyy-MM-dd HH:mm:ss} [%-5p %marker](%C:%L) %m%n" />
		</File>
	</Appenders>
	<Loggers>
		<Logger name="產生日誌包" level="debug" additivity="false">
			<AppenderRef ref="STDOUT" />
			<AppenderRef ref="FILE" />
		</Logger>
		<Logger name="產生日誌包" level="debug" additivity="false">
			<AppenderRef ref="STDOUT" />
			<AppenderRef ref="FILE" />
		</Logger>
		<Root level="warn">
			<AppenderRef ref="STDOUT" />
			<AppenderRef ref="Async" />
		</Root>
	</Loggers>
</Configuration>

<logger>標籤的做用:爲不一樣的包使用不一樣的log配置。
如配置了     debug

<Logger name="產生日誌包" level="debug" additivity="false">
            <AppenderRef ref="STDOUT" />
            <AppenderRef ref="FILE" />
        </Logger>日誌

則包及其子包下的全部類使用的log配置都是debug,且輸出到FILE
其餘類使用的log配置都是根loggercode

logger的默認配置具備繼承特性, 即全部的logger配置繼承根logger,
name爲「a.b.c"的logger配置繼承name爲"a.b"的配置, name爲"a.b"又繼承name爲"a"的logger而配置。。。
若使用了additivity="false"表示不繼承父logger的配置。xml

3.使用@Log4j2相關注解對象

4.經過try...catch以及拋出異常,將異常寫入文件 Java異常處理主要經過5個關鍵字控制:try、catch、throw、throws和finally。try的意思是試試它所包含的代碼段中是否會發生異常;而catch當有異常時抓住它,並進行相應的處理,使程序不受異常的影響而繼續執行下去;throw是在程序中明確引起異常;throws的做用是若是一個方法能夠引起異常,而它自己並不對該異常處理,那麼它必須將這個異常拋給調用它的方法;finally是不管發不發生異常都要被執行的代碼
    
    關鍵字:throw,throws,try和catch的用法以下:
        一、throws出如今方法的聲明中,表示該方法可能會拋出的異常,容許throws後面跟着多個異常類型
        二、throw出如今方法體中,用於拋出異常。當方法在執行過程當中遇到異常狀況時,將異常信息封裝爲異常對象,而後throw。
        三、try出如今方法體中,它自身是一個代碼塊,表示嘗試執行代碼塊的語句。若是在執行過程當中有某條語句拋出異常,那麼代碼塊後面的語句將不被執行。
        四、catch出如今try代碼塊的後面,自身也是一個代碼塊,用於捕獲異常try代碼塊中可能拋出的異常。catch關鍵字後面緊接着它能捕獲的異常類型,全部異常類型的子類異常也能被捕獲。
 繼承

相關文章
相關標籤/搜索