Over time, as our community of practice has learned more about Spring, React, and the other various frameworks we are using, we have adopted certain practices to keep the code base clean.
You will notice that these practice are not uniformly observed throughout the code base. This is because new practices are discovered on an ongoing basis, and it is not always feasible to go back and revise all of the code each time a new practice is adopted.
The list below contains certain practices that should be used going forward, and incorporated into the older code as time permits.
lombok.Data to generate setters/getters/toString/equals/hashCode
On classes that are primarily records that store data (e.g. most
@Entity classes, most
model type classes), rather than writing setters and getters from scratch, along with
hashCode, you can simply annotate the class with
@Data, and add:
For more information, see: https://projectlombok.org/features/Data
@Slf4j instead of creating logger from scratch
In the Java code, you will sometimes see these imports:
import org.slf4j.Logger; import org.slf4j.LoggerFactory;
And a declaration near the top of the file:
private Logger logger = LoggerFactory.getLogger(Auth0MembershipService.class);
These can be replaced with this import:
And this annotation at the start of the class:
You can then change all instance of
log (the variable that is automatically declared by the