在maven項目的pom.xml中添加依賴:
<dependency>
<groupId>org.slf4j</groupId> <artifactId>slf4j-api</artifactId> <version>1.7.5</version>
</dependency>
<dependency>
<groupId>org.slf4j</groupId> <artifactId>slf4j-log4j12</artifactId> <version>1.7.5</version>
</dependency>
<dependency>
<groupId>log4j</groupId> <artifactId>log4j</artifactId> <version>1.2.17</version>
</dependency>
<dependency>
<groupId>org.projectlombok</groupId> <artifactId>lombok</artifactId> <version>1.16.18</version> <scope>provided</scope>
</dependency>
- slf4j就是眾多接口的集合,它不負責具體的日志實現,只在編譯時負責尋找合適的日志系統進行綁定。具體有哪些接口,全部都定義在slf4j-api中。
- slf4j-log4j12是鏈接slf4j-api和log4j中間的適配器。它實現了slf4j-apiz中StaticLoggerBinder接口,從而使得在編譯時綁定的是slf4j-log4j12的getSingleton()方法
- log4j是具體的日志系統。通過slf4j-log4j12初始化Log4j,達到最終日志的輸出。
- lombok:一個插件,封裝了log的get和set,可以直接使用log來輸出日志信息。
具體的使用
@Slf4j
public class ValidatorAction {
public void printValidatorResult(Set<ConstraintViolation<ValidatorBean>> set1){
for(ConstraintViolation<ValidatorBean> constraintViolation:set1){
log.info("錯誤: "+constraintViolation.getMessage());
log.info("字段: "+constraintViolation.getPropertyPath().toString());
}
}
}