[JAVA] Comment utiliser @Builder (Lombok)

Qu'est-ce que l'annotation @Builder de Lombok?

import lombok.Builder;

//JavaClass du côté appelé
@Builder
public class Employee {
	private String name;
	private int syainId;
	private int age;
	private String position;
	private String status;
}
//Appelant du constructeur
Employee employee = Employee.builder()
        .name("Kohei Sato")
        .syainId(101)
        .age(32)
        .position("developper")
        .build();

Quelle est la valeur initiale? ??

Dans l'exemple ci-dessus, l'état n'est pas spécifié. → le statut sera nul. Puisqu'il s'agit d'une chaîne, elle est nulle, mais il semble que int vaut 0 et boolean est faux.

Méthode de spécification de la valeur initiale 1: Classe interne

@Builder
public class Employee {
    private String name;
    private int syainId;
    private int age;
    private String position;
    private String status;
    
    public static class EmployeeBuilder {
    	private String status = "Active";
    }
}

Méthode de spécification de la valeur initiale 2: utiliser l'annotation par défaut

--La valeur initiale peut être spécifiée lors de la déclaration d'une variable en ajoutant une annotation.

@Builder
public class Employee {
	@Builder.Default private String name = "No Name";
	@Builder.Default private int syainId = 0;
	@Builder.Default private int age = 30;
	@Builder.Default private String position = "Normal";
	@Builder.Default private String status = "Active";
}

Celui-ci est plus facile à voir personnellement.

référence

https://reinhard.codes/2016/07/13/using-lomboks-builder-annotation-with-default-values/

Recommended Posts

Comment utiliser @Builder (Lombok)
Comment utiliser Lombok maintenant
Comment utiliser Lombok au printemps
Comment utiliser Map
Comment utiliser rbenv
Comment utiliser with_option
Comment utiliser fields_for
Comment utiliser java.util.logging
Comment utiliser collection_select
Comment utiliser Twitter4J
Comment utiliser active_hash! !!
Comment utiliser MapStruct
Comment utiliser TreeSet
[Comment utiliser l'étiquette]
Comment utiliser l'identité
Comment utiliser le hachage
Comment utiliser Dozer.mapper
Comment utiliser Gradle
Comment utiliser org.immutables
Comment utiliser java.util.stream.Collector
Comment utiliser VisualVM
Comment utiliser @Builder et @NoArgsConstructor ensemble
Comment utiliser Map
[Java] Comment utiliser Map
Comment utiliser Queue avec priorité
[Rails] Comment utiliser enum
Comment utiliser java Facultatif
Comment utiliser JUnit (débutant)
Comment utiliser le retour Ruby
[Rails] Comment utiliser enum
Comment utiliser la classe Java
Comment utiliser Big Decimal
[Java] Comment utiliser removeAll ()
Comment utiliser String [] args
Comment utiliser la jonction de rails
Comment utiliser Java Map
Ruby: Comment utiliser les cookies
Comment utiliser Dependant :: Destroy
Comment utiliser Eclipse Debug_Shell
Comment utiliser Apache POI
[Rails] Comment utiliser la validation
Comment utiliser les variables Java
[Rails] Comment utiliser authenticate_user!
Comment utiliser GC Viewer
[Création] Comment utiliser JUnit
[Rails] Comment utiliser Scope
Comment utiliser la méthode link_to
[Rails] Comment utiliser la "devise" des gemmes
Comment utiliser StringBurrer et Arrays.toString.
Comment utiliser le tableau (mémorandum personnel)
Comment utiliser HttpClient de Java (Get)