Я пытаюсь включить один и тот же бит html на различные страницы. Этот шаблон представляет собой таблицу, которая отображает данные из базы данных. Я знаю, что у Thymeleaf есть фрагменты, но насколько я могу судить, я не могу включить фрагмент с собственным контроллером, который понадобится моему шаблону, чтобы он мог получить необходимые данные.Thymeleaf включает шаблон с собственным контроллером
Я видел this question, но этот шаблон можно назвать несколько раз на одной странице и добавить, что многие атрибуты Модели не кажутся правильным решением (не говоря уже о том, что имена атрибутов должны быть уникальными).
Есть ли способ включить этот шаблон в Thymeleaf, поэтому он имеет свой собственный контроллер отдельно от страницы, в которую он также включен.
Хотя это возможно (и может быть решением, которое вы ищете), я думаю, что делать это плохая идея в целом. Он нарушает принципы MVC (игнорируя модель/контроллер) и сделает ваш код сложнее поддерживать и отлаживать. – Metroids
@ Metroids: Я не согласен. Я считаю, что это еще проще поддерживать, так как вы можете создавать «повторно используемые компоненты». Я не говорю о бизнес-сервисах, а скорее о сервисах компонентов. «Компонент» - расширяемая аннотация, поэтому вы можете построить, как в моем случае, «UIService», живущий в контексте servlet. Модель IS - это список результатов/сущностей, а фрагмент - это представление. Если вам нравится, я могу отредактировать ответ на примере. –