小编mar*_*aos的帖子

SLF4J日志级别作为参数

我们希望使用SLF4J,但我们发现的一件事是你不能将关卡指定为参数,即

Logger.log(Level.INFO, "messsage");
Run Code Online (Sandbox Code Playgroud)

你必须这样做

logger.info("message");
Run Code Online (Sandbox Code Playgroud)

这可以防止能够通过方法传递所有内容,因此您可以将其他属性添加到类中的所有日志消息.

public class Test
{
    public Test(SomeObj obj)
    {
       log(Level.INFO, "message");
    }

    public void anotherMethod()
    {
       log(Level.DEBUG, "another message");
    }
    private void log(Level level, String message)
    {
        logger.log(level, message + obj.someString());
    }
}
Run Code Online (Sandbox Code Playgroud)

有没有办法使用SLF4j实现这一目标?

java logging slf4j

14
推荐指数
2
解决办法
1万
查看次数

在没有主要方法的情况下使用Guice

我正在创建一个将作为jar包含的库,因此它不包含main方法.我想知道在这种情况下引导Guice的最佳做法是什么.我有一个顶级单身人士.

public class TestManager
{
    private TestManager()
    {
    }

    public static TestManager getInstance()
    {
        // construct and return singleton
    }

    public void createSomeObjects()
    {
    }

}
Run Code Online (Sandbox Code Playgroud)

我应该在哪里引导Guice?我想在构造函数中我可以调用Guice.createInjector(new Module()); 但它不会注入createSomeObjects()中创建的任何对象.

当你没有main方法()时,有没有一种常见的方法可以做到这一点?

干杯.

java singleton guice

7
推荐指数
1
解决办法
1669
查看次数

标签 统计

java ×2

guice ×1

logging ×1

singleton ×1

slf4j ×1