3
3
.
.
1
1
.
.
2
2
U
U
s
s
i
i
n
n
g
g
@
@
S
S
l
l
f
f
4
4
j
j
I
I
n
n
f
f
o
o
[
[
G
G
]
]
[
[
R
R
]
]
This tutorial shows how to use Lombok's @Slf4j Annotation to work with Slf4J.
This Annotation automatically generates following code so that we don't have to repeat it in every Class we want to log
private static final org.slf4j.Logger log = org.slf4j.LoggerFactory.getLogger(LogExampleOther.class);
Application Schema [Results]
Spring Boot Starters
GROUP
DEPENDENCY
DESCRIPTION
Web
Spring Web
Enables: @RequestMapping, Tomcat Server
Developer Tools
Lombok
Enables: @Slf4j (injects LoggerFactory)
P
P
r
r
o
o
c
c
e
e
d
d
u
u
r
r
e
e
Create Project: springboot_log_lombok (add Spring Boot Starters from the table)
Create Package: controllers (inside main package)
– Create Class: MyController.java (inside controllers package)
MyController.java
package com.ivoronline.springboot_log_lombok.controllers;
import lombok.extern.slf4j.Slf4j;
import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.ResponseBody;
import org.springframework.web.bind.annotation.RequestMapping;
@Slf4j
@Controller
public class MyController {
@ResponseBody
@RequestMapping("/Hello")
public String hello() {
log.info("Hello from Controller");
return "Hello from Controller";
}
}
hello()
MyController
http://localhost:8080/Hello
Browser
R
R
e
e
s
s
u
u
l
l
t
t
s
s
http://localhost:8080/Hello
Console
2021-03-16 08:59:53.267 INFO 14180 - [nio-8080-exec-2] c.i.s.controllers.MyController : Hello from Controller
Application Structure
pom.xml
<dependencies>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-web</artifactId>
</dependency>
<dependency>
<groupId>org.projectlombok</groupId>
<artifactId>lombok</artifactId>
<optional>true</optional>
</dependency>
</dependencies>