Как настроить форму в приложении Spring, которая извлекает данные из разных таблиц - PullRequest
0 голосов
/ 01 декабря 2011

Я занимаюсь разработкой веб-приложения Spring и надеюсь, что кто-нибудь может дать мне несколько советов.В настоящее время у меня есть форма, которая при отправке заполняет простой POJO, который хранится в базе данных.Этот POJO должен быть немного более сложным, будучи привязанным к двум другим POJOS.

Так, например, у меня есть класс Job, который должен содержать экземпляр класса WorkOrder и класса Authorization.В форме я хотел бы 2 выпадающих списка, заполненных полями имен этих двух классов, а в БД я просто сохраню идентификаторы соответствующих строк в соответствующих таблицах в таблице заданий.Не уверен, нужно ли мне на самом деле создавать отношения с внешним ключом или что-то еще.В любом случае, я полагаю, что прочитал кое-что об этом, когда впервые изучал Spring месяц назад, но мне это еще не понадобилось в моей разработке, поэтому я не использовал его и, похоже, больше не могу его найти.Как правильно это сделать?Было бы здорово, если бы кто-то мог помочь, или, если бы вы указали мне нужные ресурсы, я был бы признателен.Одно замечание, я ищу ответы, используя Spring 3, а не более старые версии.Это часто кажется проблемой, когда я исследую материал, так как, я думаю, понятно, что есть больше информации о Spring 2. и тому подобное.

Надеюсь, мой вопрос имеет смысл.Спасибо всем.

1 Ответ

1 голос
/ 02 декабря 2011

Может я не правильно понял вопрос.

Если у вас есть формы с полями, которые нельзя сопоставить 1: 1 с сущностью, вам следует использовать другой пользовательский объект для хранения данных формы (простой объект POJO.), Часто называемый Command-Class.

В контроллере отправки формы вам нужно как-то разобраться с этой командой. В основном преобразование данных из команды в сущности домена.

Кстати: даже при наличии сопоставления 1: 1 вы можете использовать команды, специфичные для формы / варианта использования, вместо сущностей домена для ясной архитектуры.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...