You've successfully subscribed to Заметки Разработчиков
Great! Next, complete checkout for full access to Заметки Разработчиков
Welcome back! You've successfully signed in.
Success! Your account is fully activated, you now have access to all content.
Success! Your billing info is updated.
Billing info update failed.

java

Идентификатор примитив

У джунов есть какая-то любовь к примитивам, и они пытаются использовать их везде, где возможно. Но не всегда это хорошая идея. @Entity public class Like { @Id private long id; } В данном случае, когда к нам приходит новый объект, мы не сможем точно сказать, сохранен ли он в БД. Может к

У джунов есть какая-то любовь к примитивам, и они пытаются использовать их везде, где возможно. Но не всегда это хорошая идея.

@Entity
public class Like {
    
     @Id
     private long id;

}

В данном случае, когда к нам приходит новый объект, мы не сможем точно сказать, сохранен ли он в БД. Может к нам попал объек с идентификатором 0.

В случае идентификатора лучше использовать обертку, то есть Long.

Форматирование полей с аннотациями

Часто у новичков вижу подобное форматирование: public class NewReviewDto { @NotNull private Long event; @Size(max = 7000) private String review; @NotNull private Boolean positive; } Эту кашу довольно сложно читать. Если над полями класса присутствуют аннотации, то я делаю несколько переносов строк, вот так: public class NewReviewDto { @NotNull private Long event; @Size(

Часто у новичков вижу подобное форматирование:

public class NewReviewDto {
     @NotNull
     private Long event;
     @Size(max = 7000)
     private String review;
     @NotNull
     private Boolean positive;
 }

Эту кашу довольно сложно читать. Если над полями класса присутствуют аннотации, то я делаю несколько переносов строк, вот так:

public class NewReviewDto {

     @NotNull
     private Long event;
     
     @Size(max = 7000)
     private String review;
     
     @NotNull
     private Boolean positive;
     
 }

Пустая коллекция вместо Null

Если ваша программа может вернуть коллекцию, которая не содержит никаких значений, убедитесь, что возвращается пустая коллекция, а не Null. Это сэкономит вам время на различные проверки и избавит от многих ошибок. public List<Event> getAllEventByUserId(int userId) { if (userId == 0) { return Collections.emptyList(); } return eventRepository.findAllByUserId(userId); }

Если ваша программа может вернуть коллекцию, которая не содержит никаких значений, убедитесь, что возвращается пустая коллекция, а не Null. Это сэкономит вам время на различные проверки и избавит от многих ошибок.

public List<Event> getAllEventByUserId(int userId) {
    if (userId == 0) {
        return Collections.emptyList();
    }
    return eventRepository.findAllByUserId(userId);
}