弹簧速度 - 我希望有动态内容的静态模板

时间:2012-03-17 10:42:00

标签: spring spring-mvc velocity

我想知道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>

现在。我在基于Spring的应用程序中有4个动作

创建,更新,登录,回家

每个动作都有自己的模板。因为创建是一个很大的形式,用于更新小表单,用于登录,登录表单,用于家庭新闻。

每个人都有很多不同之处。现在我想动态交换我的内容 我可以用动态部分创建这样的模板容器(我的意思是标题部分和右侧div)吗?

我不想让变量的动作响应并将其传递给模板。我想要一个简单的模板,例如create.jsp或create.vm或create.html,我希望我的应用程序自动获取操作的模板并将其呈现在我的静态模板容器中。

我希望很清楚

2 个答案:

答案 0 :(得分:1)

为什么不使用瓷砖呢?它专为这种情况而设计。

答案 1 :(得分:0)

我在几个项目中使用了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一样。