Spring Roo не генерирует CRUD - PullRequest
       5

Spring Roo не генерирует CRUD

1 голос
/ 01 ноября 2010

В Spring Roo я использовал этот учебник с моим пользовательским xsd для генерации объектов.
После этого я использовал команду controller all ~ .web , контроллер генерируется, но без функций CRUD.

Если я делаю ручные объекты в контроллере Roo с функциями CRUD генерируется. Есть идеи, в чем проблема?

Файл схемы xsd в моем случае важен для обмена данными REST.

Ответы [ 2 ]

1 голос
/ 06 декабря 2010

Учебное пособие, на которое вы ссылаетесь, действительно объясняет, как вы можете создать модель Java (домена) на основе предоставленной XML-схемы, но в настоящее время команда controller all ~ .web (версия 1.1.0)создает только контроллеры и соответствующие функции CRUD для реальных объектов Roo (базы данных).Поскольку сгенерированные классы Java не помечены как сущности Roo, команда контроллера не создаст ожидаемые вами команды CRUD, которые она, как вы заявили, будет делать для созданных вручную сущностей, поскольку они помечены как сущности Roo (см. @RooEntityаннотации к ним).

Как указано в руководстве, вам нужно будет вручную обновить ваш контроллер и просмотреть файлы (* .jspx), чтобы реализовать функциональность CRUD при использовании аддона Spring Roo jaxb.Из проверки вопросов форума и Jira я знаю, что в настоящее время есть некоторые идеи относительно того, чтобы Spring Roo также создал базовую функциональность CRUD для обычных (не-сущностных) компонентов (см. Проблему ROO-344 и связанную с ней ROO).-277), но в настоящее время это только идеи, и, скорее всего, они не будут реализованы в ближайшем будущем.Таким образом, при использовании XML-схемы в качестве основы для вашей модели домена Spring Roo вам все равно придется выполнить довольно много ручного кодирования, чтобы иметь базовое приложение CRUD, в отличие от использования базы данных в качестве базы для создания модели вашего домена., поскольку тогда он в основном выполняет пару команд в оболочке Roo, и все готово.

Если ваша XML-схема является лишь определением модели вашего домена, и вы действительно хотите, чтобы ваши данные сохранялись ви извлеченные из базы данных вашим приложением, которые могут вызывать веб-сервис REST для извлечения и сохранения изменений, вы можете попытаться использовать аддон jaxb для генерации модели, а затем аннотировать сгенерированные классы, но я сам этого не сделалраньше я не уверен, сработает ли это, но, возможно, стоит попробовать.

0 голосов
/ 02 ноября 2010

Spring Roo генерирует файлы AspectJ (.aj) рядом с исходными файлами .java.Таким образом, вы не увидите методы в ваших исходных файлах.Они находятся в файлах .aj, но присутствуют после компиляции в сгенерированных файлах .class.

...