2013-08-28 5 views
0

Если у меня есть набор строительных блоков HTML, которые используются многими различными компонентами, могу ли я использовать для этого класс Java? В настоящее время я использую JSP, но это немного сложно.Использование классов для представления

Для например: com.mydomain.view.Table.java

и из JSP создать объект этого, как это:

Table tb = new Table(data); 
String html = tb.getHtml(); 

Так это нормально? хорошо ? лучше ? или лучше?

Если нет, каков стандартный способ достижения этого?

PS: Класс Table здесь не имеет никакого отношения к html <table> тегу. То, что делает этот класс, создает табличную структуру данных. Он может использовать или не использовать html <table>.

ответ

0

Конечно, стандартного способа нет.

Так все в порядке? хорошо ? лучше ? или лучше?

Ответ зависит от цели программного обеспечения, которое вы создаете. Одним из важных факторов для рассмотрения является «eventual efficiency».

Ищете только класс Table, он выглядит хорошо. Конструктор четко заявляет, что он зависит от «данных». Метод getHtml(), на мой взгляд, является тем, где он должен быть.

0

Если у вас есть другие мнения (Swing, Android, ...), вы получите дополнительные getSwing() или getAndroid() методов. В любом случае, это нормально, если класс Table является общим промежуточным слоем между реальной моделью и представлением.

Еще одна возможность - передать модель или Table на уровень представления JSP и позволить уровню представления решить, как преобразовать его в HTML. Например, используя taglib (который в конечном итоге может также вызвать getHtml). Если вы передаете Table, представление также будет иметь общий характер (поскольку он не может реально решить, как данные отображаются).

0

С помощью html строительных блоков одно решение использует загрузку jQuery, которая возвращает html. Комбинация Spring MVC с видом на плитки Apache лучше всего подходит для этого.

$ ("elementId"). Load ("$ {context}/rest_url_returning_html_building_block");

Смежные вопросы