Похожие чаты

I have a problem with some clases, they have too

many fields. i cant think a better way to make this less painful.
ex, class pipe has an int id, float len, float diameter, enum type, area, gas and about 30 fields more. classs artifact has about 60 fields
is there a better way to get every field from the form, validate and sending it to a database without do it field by field?
i was thinking in a array of fields, but not all field has the same type

3 ответов

7 просмотров

Felipe, a class with many fields deserves a better look: Is it necessary such a number of fields ??? You can refactor out with more classes, maybe base class(es) using inharitance. With respect to validation, you can use, among others, Bean Validation: https://beanvalidation.org/

Absolutely agree with @R_r_F_BR . Some more thoughts from me: If those classes with 60 field are actually entities and correspond to DB tables with 60 columns, then your may consider using embedded entities to keep your DB tables but touch only entity classes. However, entity classes with many fields are not so bad. They just reflect data model. I don't see a big problem there unless some of those fields conform sets that represent another logical entity. Especially, if such logical entity is reusable. But even though, it may be done intentionally, denormalized for performance sake.

If you're using spring, validation: https://docs.spring.io/spring/docs/4.1.x/spring-framework-reference/html/validation.html

Похожие вопросы

Обсуждают сегодня

Какой-то там пердун в 90-х решил, что есть какая-то разная типизация. Кого вообще это волнует?
КТ315
49
Hi. Do we have a raid bot? Why nobody doing raids on X? Even RH mentioned this and nobody paying attention...whats the channel for hex memes? If mods cant run raids just insta...
H
31
Подскажите, а есть vault lite или ченить такое?) А то нужен вольт для похода в вольт, но весит он ~500 мб) как-то многовато для парочки запросов ))
Alexandr Orloff
17
блеать, почему так?? где в роутере это исправляется?
Арсен Маньяков 🇦🇲
16
void terminal_scroll() { memmove(terminal_buffer, terminal_buffer + VGA_WIDTH, buffer_size - VGA_WIDTH); memset(terminal_buffer + buffer_size - VGA_WIDTH, 0, VGA_WIDTH); ...
Егор
47
🌊 Ocean Nodes Dashboard Update 🚀 Hey, Oceaners! First off, a massive round of applause 👏to all of you for the amazing engagement since we launched Ocean Nodes. In just a few ...
KreigDK | Never DM first🌊
3
Всем привет! Подскажите, пожалуйста, в чем ошибка? Настраиваю подключение к MySQL. Либы лежат рядом с exe. Все как по "учебнику"
Евгений
16
А можете как-то проверить меня по знаниям по ассемблеру?
A A
132
Здравствуйте! У меня появилась возможность купить книгу "Изучай Haskell во имя добра!". Но я где-то слышал, что эта книга устарела. Насколько это правда??
E
22
люди, которые используют flameshot, к вам вопрос. Можно-ли поставить хоткей на создание скриншота? В программе есть отдел "горячие клавиши", но там все для редактирования, скр...
ThunDer104
11
Карта сайта