当前位置: 首页 > 知识库问答 >
问题:

Logback不使用hibernate

马魁
2023-03-14

我试图使用Hibernate的logback,似乎很容易,但我不能得到它的工作

hibernate.cfg.xml

    <!-- DB Properties -->
    <property name="dialect">org.hibernate.dialect.MySQLDialect</property>
    <property name="hibernate.connection.driver_class">com.mysql.jdbc.Driver</property>
    <property name="hibernate.show_sql">true</property>
    <property name="hibernate.transaction.factory_class">org.hibernate.transaction.JDBCTransactionFactory</property>
    <property name="hibernate.current_session_context_class">thread</property>

    <!-- DB Connection -->
     <property name="hibernate.connection.url"> XXXXXXXXXXXXX</property>
    <property name="connection.username">XXXXXXXXXX</property>
    <property name="connection.password">XXXXXXXXXX</property>


    <!-- c3p0 config  -->

    <property name="connection.provider_class">org.hibernate.connection.C3P0ConnectionProvider</property>     
    <property name="hibernate.c3p0.acquire_increment">1</property>
    <property name="hibernate.c3p0.idle_test_period">100</property>
    <property name="hibernate.c3p0.min_size">10</property>
    <property name="hibernate.c3p0.max_statements">50</property>
    <property name="hibernate.c3p0.timeout">1800</property>


</session-factory>

logback.xml

<appender name="STDOUT" class="ch.qos.logback.core.ConsoleAppender">
    <encoder class="ch.qos.logback.classic.encoder.PatternLayoutEncoder">
        <Pattern>%d{yyyy-MM-dd_HH:mm:ss.SSS} %-5level %logger{36} - %msg%n
        </Pattern>
    </encoder>
</appender>

<appender name="FILE"
    class="ch.qos.logback.core.rolling.RollingFileAppender">
    <file>c:/timesheet.log</file>
    <encoder class="ch.qos.logback.classic.encoder.PatternLayoutEncoder">
        <Pattern>%d{yyyy-MM-dd_HH:mm:ss.SSS} [%thread] %-5level %logger{36} -
            %msg%n
        </Pattern>
    </encoder>

    <rollingPolicy class="ch.qos.logback.core.rolling.FixedWindowRollingPolicy">
        <FileNamePattern>c:/timesheet.%i.log.zip</FileNamePattern>
        <MinIndex>1</MinIndex>
        <MaxIndex>10</MaxIndex>
    </rollingPolicy>

    <triggeringPolicy
        class="ch.qos.logback.core.rolling.SizeBasedTriggeringPolicy">
        <MaxFileSize>2MB</MaxFileSize>
    </triggeringPolicy>

</appender>
<logger name="org.hibernate" level="ALL"/>
<root level="INFO">
    <appender-ref ref="FILE" />
    <appender-ref ref="STDOUT" />
</root>

控制台输出

4.aziendagru2.aziendagru2.aziendagru2.id.aziendagru2.id.aziendagru2.id.id.azienda作为一个gruppo作为一个id1作为一个id1作为一个id1作为一个id1作为一个id1作为一个ID0作为一个ID0作为一个0作为一个0,AziendAgru8.id,AziendAg8作为一个城市作为一个Gru他们作为一个Gru警察作为一个Gru警察作为一个Gru警察作为一个Gru警察,作为一个Gru警察作为一个Gru警察作为一个Gru警察作为一个Gru警察作为一个Gru警察作为一个GruP,作为一个政府作为一个作为一个政府作为一个政府作为一个作为一个作为一个作为一个作为一个作为一个作为一个作为id1作为id1作为一个政府的政府的政府的_3_1_,livello3。将一个描述为描述,一个描述为描述,一个描述为描述,一个描述为描述,一个描述为描述,一个描述为描述,一个描述为描述,一个描述为描述,一个描述为描述,一个描述为描述,Utenianag4.nome作为nome1.2来自Tsu utenti这个左外连接Tsu aziende\u gruppo aziendagru2\uuu在这个上,Idu azienda\u gruppo=aziendagru2.id\u azienda\u gruppo左外连接Tsu livelli livello=livello=livello=livello.id\u livello左外连接ts Ficu Utienda\u Anagraagru\u4\uid\uu Agru其中,这个u.username=?这个密码是多少?

共有2个答案

韩宜春
2023-03-14

如果您想记录所有Hibernate内容(这是大量的日志,将是一个真正的性能问题),请使用TRACElog-level而不是all

叶文博
2023-03-14

您看到的控制台输出是因为您在hibernate配置中有以下内容:

<property name="hibernate.show_sql">true</property>

这告诉hibernate将sql准备好的语句记录到控制台。

很难从您的问题中判断logback日志在其他方面是否正常工作,但如果不是这样,这里有一个非常好的(如果有点过时;只需更新版本号)教程,介绍如何安装和运行它。

编辑

如果上面的教程不起作用,那么您可能正在使用Hibernate 4的版本。

在hibernate的更高版本中,日志框架从slf4j切换到JBoss日志。这意味着slf4j不再是Hibernate依赖项。

您需要将最新的slf4j JAR添加到类路径中。

 类似资料:
  • 嗨,我有问题与logback和slf4j,我写简单的应用程序,后来是包装在罐,我想添加有日志使用logback 即时通讯使用: 我主要有: 用于在jar文件外加载logback.xml配置 最有趣的是,这个程序在本地机器(Windows)上运行(读取logback.xml、创建文件、写入文件),但当我将它上传到远程服务器(linux)时,我出现了奇怪的错误 问题是他为什么要投ch。向后退。经典来自

  • 问题内容: 我正在迁移一个曾经使用log4j进行logback / slf4j的应用程序,并且已经出现问题约2周了……我做了一个小项目来测试logback / slf4j,它的工作效果很好,但是由于某种原因,在应用它时到实际的应用程序,它只是不想工作。 我正在使用JBoss 6.2,将EAR部署到standalone / deployments目录并启动服务器(除了我得到这个异常的事实,这一切都很

  • 我使用的是Spring Boot 1.3.2,并且有logback-spring.xml如下所示- 我的pom.xml有- 我的application.properties文件如下- 但是当它达到10 MB时,日志文件不会回滚。也尝试使用下面的日志文件,仍然没有回滚。 任何帮助/建议都很感激!!!

  • 问题内容: 当前,我们通常记录所有进出我们系统的XML文档,其中一些包含明文密码。我们希望能够配置执行此操作的logback logger / appender进行某种模式匹配或类似操作,并且如果它检测到存在替换它的密码(很可能带有星号)。注意,我们不想过滤掉日志条目,我们想掩盖其中的一部分。我很乐意提供有关如何通过注销执行此操作的建议。谢谢。 问题答案: 0.9.27版本的logback引入了替

  • 这个应用程序在IntelliJ中工作正常,并根据配置创建日志文件,但是当从命令行启动应用程序时,它不使用logback-spring.xml文件,而是继续创建*tmp/spring.log文件,该文件似乎来自Spring*logback/base.xml.我花了几天时间来解决这个问题,但似乎没有什么工作到目前为止,其他问题不能解决根本问题,感谢您的帮助。 我将以以下方式启动应用程序:- 我可以看到