guice provides inbuilt binding for java.util.logging.logger class. logger's name is automatically set to the name of the class into which the logger is injected. see the example below.
example
create a java class named guicetester.
guicetester.java
import java.util.logging.logger;
import com.google.inject.abstractmodule;
import com.google.inject.guice;
import com.google.inject.inject;
import com.google.inject.injector;
public class guicetester {
public static void main(string[] args) {
injector injector = guice.createinjector(new texteditormodule());
texteditor editor = injector.getinstance(texteditor.class);
editor.makespellcheck();
}
}
class texteditor {
private logger logger;
@inject
public texteditor( logger logger) {
this.logger = logger;
}
public void makespellcheck(){
logger.info("in texteditor.makespellcheck() method");
}
}
//binding module
class texteditormodule extends abstractmodule {
@override
protected void configure() {
}
}
output
compile and run the file, you will see the following output.
dec 20, 2017 12:51:05 pm texteditor makespellcheck info: in texteditor.makespellcheck() method