скорость с пружиной - хочу иметь статический шаблон с динамическим включением - PullRequest
0 голосов
/ 17 марта 2012

Мне интересно, может ли Velocity делать то, что я хочу?

Например, у меня есть

<html>
   <meta> 
      <title>My title</title>
   </meta>
   <body>
   <div id="content">
   <!-- here is my dynamic content -->
   </div>       
   <div id="right">static content</div> 
  </body></html>

Теперь. У меня есть 4 действия в приложении на основе Spring

создать, обновить, войти, домой

Каждое действие имеет свой собственный шаблон. Для создания это большая форма, для обновления маленькая форма, для входа в систему, форма входа, для последних новостей дома.

Они очень сильно отличаются друг от друга. Теперь я хочу динамически поменять содержимое в моем Могу ли я создать такой шаблон-контейнер (я имею в виду часть заголовка и правый элемент div) с динамической частью?

Я не хочу получать ответ действия на переменную и передавать его в шаблон. Я хочу иметь простой шаблон, например create.jsp или create.vm или create.html, и я хочу, чтобы мое приложение автоматически получило шаблон действия и отобразило его в моем статическом контейнере-шаблоне.

Надеюсь, это понятно

Ответы [ 2 ]

1 голос
/ 17 марта 2012

Почему бы вместо этого не использовать плитки?Он предназначен для этого сценария.

0 голосов
/ 17 марта 2012

Я использовал Tiles 2 с JSP в нескольких проектах, и мне это нравится.Однако в Velocity я предпочитаю макросы для простой системы шаблонов.

main.vm:

#macro(main)
<html>
    <meta>
        <title>My title</title>
    </meta>
    <body>
        <div id="content">
            $bodyContent
        </div>
    </body>
</html>
#end

hello.vm:

#@main
Hello, World!
#end

Конфигурация пружины:

<bean id="velocityConfigurer" 
    ...
    <property name="velocimacro.library" value="main.vm" />
</bean>

Возможно, это не так красиво, но у него есть преимущество , что каждый вид - это тот, кто решаеткакой макет применяется, больше как JSF.

...