2012-01-21 15 views
0

为Java条纹表示框架,呈现模板和模板提供的代码段可以通过多种方式来实现:使用哪些布局重用条纹不同的方式

    代码部分可在模板中定义

  • <stripes:layout-component name="foo" />
  • ${foo}

您可以提供这些组件

  • 使用<stripes:layout-component name="foo">bar</stripes:layout-component>内部<stripes:layout-render ...></stripes:layout-render>
  • 作为参数<stripes:layout-render ... foo="bar">

为了使更复杂的想法,JSTL变量可以使用JSTL <c:set var="foo" value="bar" />

  • 使用<c:out value="${foo}">输出是

    • 定义

    所有这些方式如何相互关联,并应使用每一个?

  • +0

    我不是Stripes布局的忠实粉丝,你几乎可以用标准的JSP标记文件做同样的事情(所以,为什么要打扰条纹:布局?) – Kdeveloper

    回答

    0

    所以,我做了一些测试上的定义可与输出的哪种方式

    测试结果:

       parametrized layout-component <-- Outputted with 
    layout-render  OK    FAIL 
    layout-component OK    OK 
    
    ^ 
    Defined with 
    

    我也使用<c:out><c:set>

    判决书做了一些测试:

    • 使用输出的变量不能与别的什么,只是layout-component
    • 变量,layout-render定义来定义似乎是刚刚成立的JSTL变量,没有别的
      • 它是通过字符串的方式 - 它 - 是从模板到页面
    • 供给使用layout-component一个变量定义JSTL变量,太
      • 但是,这是不能之前可能layout-component改变已经输出它
    • 优势利用layout-component的是,它在多个模板继承
      • home.jsp呈现std-tmpl.jsp,这使得base.jsp。在这种情况下home.jsp可以提供变量设置layout-component: foo以及它在base.jsp
    • 被设置用于输出不应该包括HTML可变它被输出,应该总是使用

      <c:out value="${foo}" />

      这将html的逃脱下列字符:<> &“”

    非常感谢所有意见和其他解释!