6

I was reading some of the tutorials and some of them are adding apache common logging jars in order to use/install spring framework instead. I have no knowledge about apache common logging.Is it necessary to install apache common logging if I want to work/learn with/from spring/springMVC.What is exactly is apache common logging? What is the most preferable way to install spring in eclipse.

Thanks

4

4 回答 4

13

Commons Logging 是 Spring 用来记录自己的数据的日志框架:

http://blog.springsource.org/2009/12/04/logging-dependencies-in-spring/

Spring 与任何其他产品一样是一种产品,因此它自己进行日志记录。它使用 Commons Logging 作为 API 来执行日志记录。

为了学习 Spring,您不需要完全了解 Commons Logging;但是您需要安装 Commons Logging 才能使 Spring Framework 正常工作。

您不会“在 Eclipse 中安装 Spring”。Eclipse 是一个 IDE。您只需下载 Spring 并通过编辑项目的构建路径(右键单击项目并选择“属性”)使其可用于您的 Eclipse 项目。

(使 Spring 可用于 JavaEE 应用程序涉及更多。有关它的信息可在简单的 Google 搜索中轻松获得)

于 2012-12-27T13:43:36.313 回答
3

是的,有必要在 spring 项目中包含 commons-logging 依赖项。日志记录是 Spring 的一个非常重要的依赖项,因为

a) 它是唯一强制性的外部依赖
b) 每个人都喜欢看到他们正在使用的工具的一些输出
c) Spring 与许多其他工具集成,所有这些工具也都选择了日志依赖。

应用程序开发人员的目标之一通常是在一个中心位置为整个应用程序(包括所有外部组件)配置统一的日志记录。
在几乎所有企业或 webapp 项目中,都需要记录与错误、调试、信息(其他重要信息/事件)相关的所有信息以存储在某处。在实际应用程序中,开发人员稍后会使用这些日志来找出代码中的错误。因此日志记录很重要。

我们可以在构建项目时将这个依赖包含在 pom.xml 中,如下所示(使用 maven 时),或者我们可以下载 commons-logging jar。

<dependencies>
 <dependency>
 <groupId>org.springframework</groupId>
 <artifactId>spring-webmvc</artifactId>
 <version>${spring.version}</version>
 <exclusions>
 <exclusion>
 <artifactId>commons-logging</artifactId>
 <groupId>commons-logging</groupId>
 </exclusion>
 </exclusions>
 </dependency>
 </dependencies>

下载 jar/依赖项后,我们需要在 src 文件夹中创建commons-logging.properties

org.apache.commons.logging.Log = org.apache.commons.logging.impl.Log4JLogger

Logger 类可以是以下任何一个:
1)org.apache.commons.logging.impl.Log4JLogger
2)org.apache.commons.logging.impl.Jdk14Logger
3)org.apache.commons.logging.impl.SimpleLog

我们需要将log4j.properties添加到 src 文件夹。

log4j.rootLogger=DEBUG, file
log4j.appender.file=org.apache.log4j.RollingFileAppender
log4j.appender.file.File=D:\\logger.log
log4j.appender.file.MaxFileSize=5MB
log4j.appender.file.MaxBackupIndex=10
log4j.appender.file.layout=org.apache.log4j.PatternLayout
log4j.appender.file.layout.ConversionPattern=%d{yyyy-MM-dd HH:mm:ss} %-5p %c{1}:%L - %m%n

现在,配置了两个库后,我们可以在类中使用它们:

    import org.apache.commons.logging.Log;
    import org.apache.commons.logging.LogFactory;
    public class HowToLog
    {
         private static Log logger = LogFactory.getLog(HowToLog.class);
          public static void main(String[] args){
                logger.info("Log info");
               logger.debug("Debug info");

     }
   }

记录器日志:

2015-01-30 22:12:20 INFO  HowToLog:14 - Log info
2015-01-30 22:12:20 DEBUG HowToLog:15 - Debug info
于 2018-04-02T19:36:15.803 回答
1

Apache Common Logging 用于记录 spring 系统的状态。没有这个库,spring 框架就无法正常工作。

在我的电脑中,我使用 myeclipse 代替它可以帮助你添加弹簧功能。

最好的

于 2012-12-27T13:42:35.587 回答
0

Apache Commons Logging (JCL) 提供了一个 Log 接口,它既是轻量级的,又是其他日志工具包的独立抽象。它为中间件/工具开发人员提供了一个简单的日志抽象,允许用户(应用程序开发人员)插入特定的日志实现。

JCL 为其他日志工具提供瘦包装日志实现,包括 Log4J、Avalon LogKit(Avalon 框架的日志基础设施)、JDK 1.4,以及用于 1.4 之前的系统的 JDK 1.4 日志 API (JSR-47) 的实现。该接口紧密映射到 Log4J 和 LogKit。

于 2014-06-10T16:44:04.780 回答