Taglibs与Javaclass:或者如何以最佳方式结合两者

时间:2009-07-27 13:58:04

标签: java-ee taglib

我目前正在为OpenCms编写一个模板,这是一个基于Java的CMS,具有非常好的taglib支持和强大的API。

无论如何,当我查看教程或源代码时,大约有50-50个taglib或Javaclasses用于生成(html)-output。

我尝试保持我的JSP清洁,这意味着没有太多的scriplet代码(而是使用JSTL等)。在某些时候我可能需要更多的代码控制,那就是Java类进来了,在这里我不知道我应该走多远(我个人不喜欢在类中生成HTML的想法)。

以下是一些专业人士我有的缺点是:

  1. 使用taglibs,我不必每次都重新启动servlet容器。我只是做出改变并看到结果
  2. 由于“相同”的语法
  3. ,taglib JSP更易于维护,特别是对于webdesigner
  4. Javaclass提供完整/更多IDE支持(类型/语法检查)
  5. 对于更复杂的需求,Javaclass代码更清晰(与将变量放入JSP中的pagecontext相比)
  6. EL(表达式语言)为JSP / taglib添加更多功能,但又需要学习另一种语法
  7. 是否有关于如何处理此问题的最佳做法? 由于还有其他同事,可能必须在未来保持这一点,我正在寻找一个干净/可维护的解决方案 - 你可能都知道当你看一些代码时的情况,虽然“他到底在想什么” ;)

1 个答案:

答案 0 :(得分:0)

我过去一直都很简单。

当目的是演示时使用taglib。假设您有一堆显示代码,您将在一堆页面中重复使用,在StackOverflow的情况下,让我们说箭头代码。因为那应该只是显示数据,所以它不需要和Java代码,我会使用taglib。

在需要卷积数据时使用Java代码。如果您必须查看资源包或对某些内容应用某些非泛型格式,我会使用Java代码,尽管我更喜欢JSTL函数为此标记。

不要使用它们来访问数据库。