Junior
Mis on Lomboki raamatukogu?
sobes.tech AI
Vastus AI-lt
Lombok on Java teek, mis võimaldab anotatsioonide abil automaatselt genereerida mallkoodi (getterid, setterid, equals, hashCode, toString, konstruktorid jne), vähendada koodi mahtu ja muuta selle kergemini loetavaks.
Peamised anotatsioonid:
@Getter / @Setter: genereerivad getterid ja setterid.@ToString: genereeribtoStringmeetodi.@EqualsAndHashCode: genereeribequalsjahashCodemeetodid.@NoArgsConstructor / @RequiredArgsConstructor / @AllArgsConstructor: genereerivad erinevaid konstruktorid.@Data: ühendab@Getter,@Setter,@RequiredArgsConstructor,@ToString,@EqualsAndHashCode.@Builder: pakub fluent API objektide loomisel.
Näide kasutamisest:
// Lomboki importid
import lombok.Data;
import lombok.Builder;
// @Data annotation genereerib getterid, setterid, kohustuslikud konstruktorid ning toString, equals ja hashCode meetodid.
@Data
// @Builder annotation võimaldab kasutada Builder disainimust objekti loomisel.
@Builder
public class User {
private Long id;
private String name;
private int age;
// Lombok genereerib automaatselt:
// getId(), setId(Long id)
// getName(), setName(String name)
// getAge(), setAge(int age)
// konstruktor(Long id, String name, int age) - kui kõik väljad on final või kasutatakse @RequiredArgsConstructor final väljadega
// toString()
// equals()
// hashCode()
// Builder kasutamise näide:
// User user = User.builder()
// .id(1L)
// .name("Alice")
// .age(30)
// .build();
}
Eelised:
- Koodimahu vähendamine.
- Koodi parema loetavuse saavutamine.
- Vähendab vigu mallkoodi kirjutamisel.
Miinused:
- Vajalik IDE integreerimine.
- Võib lihtsustada silumist, kuna genereeritud kood ei ole otseselt nähtav.