Spring
vẫn sử dụng commons-logging
cho tất cả ghi nhật ký nội bộ (tương thích ngược). Nếu bạn muốn sử dụng một số khung đăng nhập khác (log4j
) thì bạn cần phải gọi số cầu các cuộc gọi từ commons logging
đến khung lựa chọn của bạn. Nếu không, bạn sẽ phải duy trì nhiều cấu hình ghi nhật ký.
slf4j
hoạt động như một mặt tiền đơn giản cho các khuôn khổ khác nhau khai thác gỗ (jul
, log4j
, jcl
, logback
) và cho phép bạn cắm vào khung đăng nhập mong muốn vào thời điểm triển khai.
Thay vì sử dụng triển khai khung đăng nhập được áp đặt bởi khung bên thứ ba, bạn cung cấp triển khai cầu slf4j's
hoạt động như thực tế nhưng thực sự chỉ chuyển tiếp cuộc gọi đăng nhập tới slf4j
hoặc ràng buộc cụ thể.
phần Đốn và cung cấp Maven pom.xml thường trông như thế này:
<!-- remove the real commons-logging from classpath -->
<!-- declare as provided or exclude from spring jars -->
<dependency>
<artifactId>commons-logging</artifactId>
<groupId>commons-logging</groupId>
<version>1.0</version>
<scope>provided</scope>
</dependency>
<!-- add slf4j interfaces to classpath -->
<dependency>
<groupId>org.slf4j</groupId>
<artifactId>slf4j-api</artifactId>
<version>1.6.4</version>
<scope>compile</scope>
</dependency>
<!-- add commons logging to slf4j bridge to classpath -->
<!-- acts as jcl but routes commons-logging calls to slf4j -->
<dependency>
<groupId>org.slf4j</groupId>
<artifactId>jcl-over-slf4j</artifactId>
<version>1.6.4</version>
<scope>runtime</scope>
</dependency>
<!-- add log4j binding to classpath -->
<!-- routes slf4j calls to log4j -->
<dependency>
<groupId>org.slf4j</groupId>
<artifactId>slf4j-log4j12</artifactId>
<version>1.6.4</version>
<scope>runtime</scope>
</dependency>
<!-- add log4j to classpath -->
<!-- does the logging -->
<dependency>
<groupId>log4j</groupId>
<artifactId>log4j</artifactId>
<version>1.2.16</version>
</dependency>
này không có gì để làm với container mùa xuân cũng không dependency injection, nó là classpath tinh khiết, classloader thứ ...
Vui lòng xem các liên kết thefollowing để biết thêm chi tiết.
Nguồn
2011-12-29 20:42:55
vì vậy khi chạy nó sử dụng tiêm phụ thuộc? vẫn còn bối rối xin lỗi. – codecompleting
Không, con quạ ''. Có lẽ tôi không hiểu câu hỏi? Bạn có thể làm rõ nó? –
kan