JAVAPROGLIB Telegram 6373
🔥 Лайфхак: оптимизируем DTO с record

Вместо обычных POJO-классов для DTO используйте record (Java 14+). Меньше кода, больше удобства.

Record автоматически создает иммутабельный класс с приватными финальными полями, конструктором, геттерами, а также переопределенными методами toString(), equals() и hashCode().

Избыточно
public class User {
private final String name;
private final int age;

public User(String name, int age) {
this.name = name;
this.age = age;
}

public String getName() { return name; }
public int getAge() { return age; }

@Override
public String toString() {
return "User{name='" + name + "', age=" + age + "}";
}

@Override
public boolean equals(Object obj) {
if (this == obj) return true;
if (obj == null || getClass() != obj.getClass()) return false;
User user = (User) obj;
return age == user.age && Objects.equals(name, user.name);
}

@Override
public int hashCode() {
return Objects.hash(name, age);
}
}


✔️ Красиво и лаконично
public record User(String name, int age) {}
Please open Telegram to view this post
VIEW IN TELEGRAM
👍24🔥8🎉32😢1



tgoop.com/javaproglib/6373
Create:
Last Update:

🔥 Лайфхак: оптимизируем DTO с record

Вместо обычных POJO-классов для DTO используйте record (Java 14+). Меньше кода, больше удобства.

Record автоматически создает иммутабельный класс с приватными финальными полями, конструктором, геттерами, а также переопределенными методами toString(), equals() и hashCode().

Избыточно

public class User {
private final String name;
private final int age;

public User(String name, int age) {
this.name = name;
this.age = age;
}

public String getName() { return name; }
public int getAge() { return age; }

@Override
public String toString() {
return "User{name='" + name + "', age=" + age + "}";
}

@Override
public boolean equals(Object obj) {
if (this == obj) return true;
if (obj == null || getClass() != obj.getClass()) return false;
User user = (User) obj;
return age == user.age && Objects.equals(name, user.name);
}

@Override
public int hashCode() {
return Objects.hash(name, age);
}
}


✔️ Красиво и лаконично
public record User(String name, int age) {}

BY Библиотека джависта | Java, Spring, Maven, Hibernate


Share with your friend now:
tgoop.com/javaproglib/6373

View MORE
Open in Telegram


Telegram News

Date: |

Members can post their voice notes of themselves screaming. Interestingly, the group doesn’t allow to post anything else which might lead to an instant ban. As of now, there are more than 330 members in the group. Channel login must contain 5-32 characters Each account can create up to 10 public channels How to Create a Private or Public Channel on Telegram? In 2018, Telegram’s audience reached 200 million people, with 500,000 new users joining the messenger every day. It was launched for iOS on 14 August 2013 and Android on 20 October 2013.
from us


Telegram Библиотека джависта | Java, Spring, Maven, Hibernate
FROM American