首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

Apache Commons Logging的运行时发现算法有什么问题

Apache Commons Logging是一个用于Java应用程序的日志记录框架,它提供了一个简单的接口,让开发人员可以在不同的日志系统之间进行切换。Apache Commons Logging的运行时发现算法主要用于在运行时动态地确定应用程序使用的日志系统。

然而,Apache Commons Logging的运行时发现算法存在一些问题,主要包括以下几点:

  1. 性能问题:运行时发现算法需要在运行时动态地确定日志系统,这会导致一定的性能开销。在高性能的应用程序中,这可能会成为一个问题。
  2. 配置问题:运行时发现算法依赖于类路径上的日志系统实现,这可能会导致配置问题。例如,如果类路径上有多个日志系统实现,运行时发现算法可能会选择错误的实现。
  3. 不支持模块化:运行时发现算法不支持模块化,这意味着它不能在OSGi等模块化环境中正常工作。
  4. 不支持Java平台日志系统:运行时发现算法不支持Java平台日志系统(JUL),这可能会导致一些问题。

为了解决这些问题,Apache Commons Logging提供了一些替代方案,例如使用静态日志系统和手动配置日志系统。此外,一些第三方框架和库也提供了与Apache Commons Logging兼容的解决方案,例如SLF4J和Log4j。

页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

java日志组件介绍(common-logging,log4j,slf4j,logback )

当然,common-logging内部一个Simple logger简单实现,但是功能很弱。所以使用common-logging,通常都是配合着log4j来使用。...使用common-logging常见代码: [java] view plaincopy import org.apache.commons.logging.Log;   import org.apache.commons.logging.LogFactory...LogFactory 内部装载日志系统流程如下: 首先,寻找org.apache.commons.logging.LogFactory 属性配置。...否则,利用JDK1.3 开始提供service 发现机制,会扫描classpah 下META-INF/services/org.apache.commons.logging.LogFactory文件...为了解决这个问题,Apache Commons Logging (之前叫 Jakarta Commons Logging,JCL)粉墨登场,JCL 只提供 log 接口,具体实现则在运行时动态寻找。

1.2K70

Java日志体系(commons-logging)Java日志系统学习

对于Web应用而言,日志重要性不言而喻,是必不可少一部分;日志提供了丰富记录功能,例如程序运行时错误信息,描述信息,状态信息和执行时间信息等。...Apache Commons Logging,又名JakartaCommons Logging (JCL),它是Apache提供一个通用日志接口,它出现避免了和具体日志方案直接耦合;在日常开发中...: #指定日志对象: org.apache.commons.logging.Log = org.apache.commons.logging.impl.Jdk14Logger #指定日志工厂: org.apache.commons.logging.LogFactory...= org.apache.commons.logging.impl.LogFactoryImpl 在我们项目中,如果只单纯依赖了commons-logging,那么默认使用日志对象就是Jdk14Logger...、org.apache.commons.logging.impl.Jdk14Logger、org.apache.commons.logging.impl.Jdk13LumberjackLogger、org.apache.commons.logging.impl.SimpleLog

1.5K50

Java常用日志框架介绍

Commons Logging Apache基金会所属项目,是一套Java日志接口,之前叫Jakarta Commons Logging,后更名为Commons Logging。...接着,Apache推出了Jakarta Commons Logging,JCL只是定义了一套日志接口(其内部也提供一个Simple Log简单实现),支持运行时动态加载日志组件实现,也就是说,在你应用代码里...现今,Java日志领域被划分为两大阵营:Commons Logging阵营和SLF4J阵营。 Commons LoggingApache大树笼罩下,很大用户基数。...Apache眼看有被Logback反超势头,于2012-07重写了log4j 1.x,成立了新项目Log4j 2。Log4j 2具logback所有特性。...Commons Logging与Slf4j实现机制对比 Commons logging实现机制 Commons logging是通过动态查找机制,在程序运行时,使用自己ClassLoader寻找和载入本地具体实现

93210

Java常用日志框架介绍

Commons Logging Apache基金会所属项目,是一套Java日志接口,之前叫Jakarta Commons Logging,后更名为Commons Logging。...接着,Apache推出了Jakarta Commons Logging,JCL只是定义了一套日志接口(其内部也提供一个Simple Log简单实现),支持运行时动态加载日志组件实现,也就是说,在你应用代码里...现今,Java日志领域被划分为两大阵营:Commons Logging阵营和SLF4J阵营。 Commons LoggingApache大树笼罩下,很大用户基数。...Apache眼看有被Logback反超势头,于2012-07重写了log4j 1.x,成立了新项目Log4j 2。Log4j 2具logback所有特性。...Commons Logging与Slf4j实现机制对比 Commons logging实现机制 Commons logging是通过动态查找机制,在程序运行时,使用自己ClassLoader寻找和载入本地具体实现

75120

MyBatis官方文档-日志

,内置日志工厂将日志交给以下其中一种工具作代理: SLF4J Apache Commons Logging Log4j 2 Log4j JDK logging MyBatis 内置日志工厂基于运行时自省机制选择合适日志工具...这将意味着,在诸如 WebSphere 环境中,它提供了 Commons Logging 私有实现,你 Log4J 配置将被忽略。... logImpl 可选:SLF4J、LOG4J、LOG4J2、JDK_LOGGINGCOMMONS_LOGGING、STDOUT_LOGGING...关于 SLF4J、Apache Commons LoggingApache Log4J 和 JDK Logging API 介绍不在本文档介绍范围内。不过,下面的例子可以作为一个快速入门。...关于这些日志框架更多信息,可以参考以下链接: Apache Commons Logging Apache Log4j JDK Logging API 日志配置 你可以对包、映射类全限定名、命名空间或全限定语句名开启日志功能来查看

99410

commons-logging,log4j,logback,slf4j之间关系详解。

commons-loggingapache最早提供日志门面接口。它主要作用是提供一个日志门面,使用者可以使用不同日志实现。...用户可以自由选择第三方日志组件作为具体实现,像log4j,或者jdk自带logging, common-logging会通过动态查找机制,在程序运行时自动找出真正使用日志库。...common-logging内部一个Simple logger简单实现,但是功能很弱。...官网:https://commons.apache.org/proper/commons-logging/ slf4j 全称:Simple Logging Facade for Java 官网:https...logging Java内部自带日志工具,java.util包下。 ? log4j Apache一个开源日志框架,也是目前应用最广一个日志框架。

1.1K70

spring in spring翻译_scipy官方文档中文版

commons-logging优点是不需要其它任何东西就可以使应用程序运转起来。它拥有一个运行时发现算法用于在classpath中寻找其它日志管理框架并且适当地选择一个使用(或者告诉它使用哪个)。...#####不使用Commons Logging 不幸是,commons-logging运行时发现算法虽然对于终端用户很方便,但存在一定问题。...两种方式关掉commons-logging: 从spring-core模块中去除对commons-logging依赖(因为这是唯一明确依赖于commons-logging地方) 依赖于一个特定commons-logging...#####使用SLF4J SLF4J是一个更干净依赖,且运行时commons-logging更有效率,因为它使用编译期而非运行时绑定其它日志管理框架。...这会失败是因为commons-logging改变了在旧版本(1.0)和新版本(1.1)中执行运行时发现算法方式,其中,旧版本在一些容器中还在使用,新版本是现在大部分人使用

76710

java程序日志管理

java中日志管理技术很多,像java自身java.util.loggingapachecommons-logging,以及slf4j、log4j、logback等等。...其中java.util.logging在日常开发中用不是很多,用比较多后边四个,commons-logging和slf4j是接口,log4j和logback是具体实现,在我所接触项目中就用到了这几个...,实现类实际上什么都没做,就是调用日志接口随便打印一条日志而已: package logService.service.impl; import org.apache.commons.logging.Log...,实际上根本看不出什么问题,只看到调用了两个接口而已,方法几乎都是一模一样,至于具体用了哪个实现,什么区别呢,完全不知道,所以我写了对应test类: package logTest; import...经过我测试发现,当使用common-logging时候,是只能使用log4j,如果去掉log4jjar包,那么结果就是运行junit后没有生成对应日志文件。

65610

Java爬取并下载歌曲

from=rank 可以看出home后边个1,难道这是代表第一页意思?于是我就把1改成2,进入,果然进入了第二页, 至此可以知道我们可以在网页里获取这500首歌单。...找到了资源,程序实现就好说了,其中使用到了自己写几个工具类,自己整理点自己工具类还是好处,以后遇到什么问题就没必要重新写了,直接拿来用就可以了。...; import org.apache.commons.logging.LogFactory; import org.apache.http.HttpEntity; import org.apache.http.client.ClientProtocolException...; import org.apache.commons.logging.LogFactory; import org.jsoup.Jsoup; import org.jsoup.nodes.Document...; import org.apache.commons.logging.LogFactory; import org.apache.http.client.config.RequestConfig; import

1.8K40

Java爬取并下载酷狗TOP500歌曲

3、java实现爬取酷狗mp3 先看一下爬取结果: 找到了资源,程序实现就好说了,其中使用到了自己写几个工具类,自己整理点自己工具类还是好处,以后遇到什么问题就没必要重新写了,直接拿来用就可以了...; import org.apache.commons.logging.LogFactory; import org.apache.http.HttpEntity; import org.apache.http.client.ClientProtocolException...; import org.apache.commons.logging.LogFactory; import org.jsoup.Jsoup; import org.jsoup.nodes.Document...import java.io.BufferedOutputStream; import java.io.File; import java.io.FileOutputStream; import org.apache.commons.logging.Log...; import org.apache.commons.logging.LogFactory; import org.apache.http.client.config.RequestConfig; import

1.1K30
领券