如何在项目中添加log4j(for consol)(使用hibernate和spring)

时间:2015-06-24 10:10:08

标签: java database spring hibernate log4j

我想将log4j(用于consol)添加到项目中的测试中(我使用hibernate和spring)。 我在test / resources中添加了log4j.properties:

nlogn

并写入测试类:

log4j.rootLogger=INFO, stdout

log4j.appender.stdout=org.apache.log4j.ConsoleAppender
log4j.appender.stdout.Target=System.out
log4j.appender.stdout.layout=org.apache.log4j.PatternLayout
log4j.appender.stdout.layout.ConversionPattern=%d{yyyy-MM-dd HH:mm:ss} %-5p %c{1}:%L - %m%n

的gradle:

import org.apache.log4j.Logger;
private Logger logger = Logger.getLogger(MyTest.class);

    @Test
    public void test1() {
        logger.info("info test");
        logger.debug("debug test");
    }

但我在控制台中没有这个文本(testCompile 'log4j:log4j:1.2.17' ),我在控制台中:

"info test"

3 个答案:

答案 0 :(得分:0)

您是否可以验证log4j.properties资源是否在类路径中并且是在运行时找到的?通常,如果在eclipse项目中将test / resources文件夹添加到源路径,则bin文件夹应该具有它(输出文件夹名称可以不同,但​​此文件必须位于类路径上)。

答案 1 :(得分:0)

在src文件夹中添加log4j.xml文件,并在xyz.log <!-- FILE Appender --> <appender name="FILE" class="org.apache.log4j.FileAppender"> <param name="File" value="D:\\xyz.log" /> <param name="MaxFileSize" value="1MB" /> <param name="MaxBackupIndex" value="100" /> <param name="Append" value="false" /> <layout class="org.apache.log4j.PatternLayout"> <param name="ConversionPattern" value="[%d{dd/MM/yy hh:mm:ss:sss z}] %5p %c{2}: %m%n" /> </layout> </appender的位置更改下面的文件位置。

&GT;

答案 2 :(得分:0)

您需要将console appender添加到log4j。我用log4j.xml完成​​了它,而不是属性文件。我希望你可以将它转换为你的log4j.properties文件。

    <appender name="console" class="org.apache.log4j.ConsoleAppender">
    <layout class="org.apache.log4j.PatternLayout">
        <param name="ConversionPattern" value="%d - %m%n"/>
    </layout>
</appender>

最后,您需要将此appender添加到root logger。

    <root>
    <priority value="debug"/>
    <appender-ref ref="error"/>
    <appender-ref ref="console"/>
    <appender-ref ref="trace"/>
</root>

希望这有帮助