【问题标题】:Structure JSP/Java code where logic is not in the JSP file构造 JSP/Java 代码,其中逻辑不在 JSP 文件中
【发布时间】:2010-09-22 21:58:24
【问题描述】:

这是一个设计问题和良好实践问题。您如何构建 Java Web 开发以使 JSP 文件中没有很多逻辑。您是否应该将任何 JSP 标记用于 if 结构或循环。我看到很多代码由于设计不良的 JSP 文件而难以遵循逻辑。然后当你想输出到不同的格式,比如 PDF 或 XML 文档时,你不能这样做,因为所有的逻辑都在 JSP 文件中。

对于 Java Web 开发,您是否遵循任何提示或实践。

我目前正在使用 Spring、Hibernate、Struts 的组合......并使用一些 Servlet 代码。

有一些与 Java 开发相关的良好实践。我们许多工作过一段时间的人都知道他们。 JSP 开发有哪些好的做法。

【问题讨论】:

  • 你在使用 Spring MVC 吗? MVC 框架应该提供一些非常好的示例 - 并且几乎迫使您 - 遵循这种类型的结构。

标签: java jsp


【解决方案1】:

避免在 JSP 中放置逻辑的最简单方法是在将请求转发到 JSP 之前执行所有逻辑。您应该在 JSP 中执行的唯一逻辑是一些基本循环(例如,用于创建 HTML 表格行)、评估条件语句和数据格式化。

所有这些都可以通过使用 JSP 标记库和 EL 来完成,而无需在 JSP 中使用 scriptlet 代码(Java 代码)。最重要的标签库是JSTL。 JSTL 标记库提供了您应该在视图中执行的大部分逻辑,尽管您偶尔也可能使用诸如displaytag 之类的利基 3rd 方标记库,这可以减少您需要为特定任务编写的 JSP 代码量。

【讨论】:

  • 没错,我就是这么想的。
  • 如果使用 WebSphere,请注意使用 JSTL 函数。标签可以工作,但由于 6.0 u 13 中修复的错误,功能可能无法正常工作。如果您有早期版本,功能可能会爆炸......您必须创建标签才能执行功能.
【解决方案2】:

由于您已经在使用 Spring,您可能需要查看 Spring Webflow。我假设您使用的是 Spring 表单标签,但如果没有,您也应该检查一下。使用这种组合,应该很少需要 [如果有的话] 在您的视图逻辑中使用 JSP 标记。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多