HTML5 模板引擎,Thymeleaf 2.0 发布

fmms 13年前
     <div id="p_fullcontent" class="detail">     <p><a href="/misc/goto?guid=4958190967297852637" target="_blank">Thymeleaf</a>是一个XML/XHTML/HTML5模板引擎,可用于Web与非Web环境中的应用开发。它是一个开源的Java库,基于Apache License 2.0许可,由Daniel Fernández创建,该作者还是Java加密库Jasypt的作者。</p>     <p>Thymeleaf提供了一个用于整合Spring MVC的可选模块,在应用开发中,你可以使用Thymeleaf来完全代替JSP,或其他模板引擎,如Velocity、FreeMarker等。 Thymeleaf的主要目标在于提供一种可被浏览器正确显示的、格式良好的模板创建方式,因此也可以用作静态建模。你可以使用它创建经过验证的XML与 HTML模板。相对于编写逻辑或代码,开发者只需将标签属性添加到模板中即可。接下来,这些标签属性就会在DOM(文档对象模型)上执行预先制定好的逻辑。</p>     <p>示例模板:</p>     <p><code></code></p>     <pre class="brush:html; toolbar: true; auto-links: false;"><code><table>    <thead>      <tr>        <th th:text="#{msgs.headers.name}">Name</td>        <th th:text="#{msgs.headers.price}">Price</td>      </tr>    </thead>    <tbody>      <tr th:each="prod : ${allProducts}">        <td th:text="${prod.name}">Oranges</td>        <td th:text="${#numbers.formatDecimal(prod.price,1,2)}">0.99</td>      </tr>    </tbody>  </table></code></pre>     <code><br /> </code>     <p></p>    </div>    <p><strong>Thymeleaf 2.0 发布了,该版本主要改进:</strong></p>    <ul>     <li>性能提升:完全重写的模板执行引擎,几乎重新设计的内部架构,性能较1.1版本有了大幅提升。 </li>     <li>在standard dialects 版本中新增了th:switch/th:case属性,th:switch属性与Java语言中的switch语句类似。 </li>     <li>在th:remove属性中添加了all-but-first值,可有效节省一些重复代码。 </li>     <li>在错误信息中显示错误位置的行号。 </li>     <li>DOM选择器。 </li>     <li>处理不完整模板:之前的Thymeleaf不能处理不完整的XML文件,这限制了Thymeleaf在需要处理片段或高级UI部件情况下的使用,2.0中解决了这个问题。 </li>     <li>完全普遍化了之前版本中已经出现的缓存基础架构。 </li>     <li>在Standard dialects中新增了XHTML DTDs。 </li>    </ul>    <p>此外,<strong>该版本针对自定义Thymeleaf扩展的用户,进行了一些改进</strong></p>    <p>详细信息参阅:<a href="/misc/goto?guid=4958328681504444107" target="_blank">What's new in Thymeleaf 2.0</a></p>