【问题标题】:understanding logic flow Struts理解逻辑流 Struts
【发布时间】:2023-03-27 09:23:01
【问题描述】:

首先,我是 Struts 的新手,我一直在关注教程 here。我了解文件的设置和web.xml

index.jsp

<%@ taglib uri="http://struts.apache.org/tags-logic" prefix="logic" %>
<logic:redirect forward="helloWorld"/>

不过,一说到index.jsp的开张,我就有些不知所措了。从index.jsp,它如何调用类com.vaannila.action.HelloWorldAction?我知道index.jsp 调用了forward=helloWorld,但这是否意味着它在寻找forward name="helloWorld",它在&lt;global-forwards&gt; 中?

让我知道如何进一步改进我的问题,因为这是我的第一个问题。

【问题讨论】:

  • 在进一步改进方面,我的目标更多是找到和阅读实际框架文档的能力:教程是框架文档的附件,而不是替代品。

标签: html jsp struts


【解决方案1】:

正确;它重定向到任何名为 "helloWorld" 的转发。

在这种情况下,这是一个前锋,它运行一个将值粘贴到表单中的动作。

您可能想参考Struts 1 tag docs,它比每次都在这里询问要快。

如果您可以避免学习 Struts 1,我会:它几乎在所有方面都过时了。 Struts 2 和 Spring MVC 等框架主导了基于 Java 框架的 Web 应用程序,而 Grails、Play、Ruby on Rails 等框架主导了基于 JVM 的 Web 应用程序。


您链接到的教程中配置文件的第 17 行开始:

<action path="/helloWorld" 
        type="com.vaannila.action.HelloWorldAction" 
        name="helloWorldForm">
  <forward name="success" path="/helloWorld.jsp" />
</action>

【讨论】:

  • 所以在&lt;global-forwards&gt;标签中,路径helloWorld.do被调用...但我似乎没有看到helloWorld.do映射到类com.vaannila.action.HelloWorldAction请指教,谢谢
  • @gabybaby 你不知道吗?它就在 struts-config 的第 17 行;将配置添加到我的答案中。这就是为什么我认为阅读实际的 Struts 文档对您很重要。
  • 另外,我没有选择 Struts 1.0 的发言权,因为那是我的雇主正在使用的:\ 希望它可以帮助我在未来更轻松地拿起 2.0
  • @gabybaby 这不是教程中的 Struts 1.0,而是 Struts 1.3。如果您确实需要使用 Struts 1.0,我会强烈考虑立即退出。此外,Struts 2 是一个完全不同的框架,你在 Struts 1 中学到的任何东西都不会有任何价值,IMO。
  • 我确实看到并理解了&lt;action-mappings&gt;,但我在动作映射中没有看到helloWorld.do 的字眼……也许我遗漏了什么?除非以某种方式忽略操作路径中的 / 以匹配 &lt;global-forwards&gt; 中的转发名称
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2010-10-28
  • 2017-07-13
  • 1970-01-01
相关资源
最近更新 更多