zoukankan      html  css  js  c++  java
  • Struts2:HelloWord笔记

    在 struts.xml 配置文件中:

      <!-- package: 包。struts2 用它来组织模块。

         name 属性:必须,用于其他的包引用当前的包.

         extends 属性:当前包继承哪个包。继承,即可以继承其中的所有的配置。通常情况下继承 struts-default ,这个包在 struts-default.xml 文件中定义。

         namespace 属性:可选。如果没有给出,则默认为 / 。若 namespace 有一个非默认值,则要想调用这个包里的 Action,就必须把这个属性所定义的命名空间添加到有关的 URI 字符串里。例如: http://localhost:8080/contextPath/namespace/actionName.action-->

    <package name="helloWorld" extends="struts-default">

      <!-- 配置一个 action:一个struts2 的请求就是一个 action

          name:对应一个 Struts2 的请求的名字(或对应一个 servletPath,但去除 / 和 扩展名),但不包含扩展名。

          class:的默认值为:com.opensymphony.xwork2.ActionSupport

          method:的默认值为:execute

          result:结果-->

      <action name="input" class="com.opensymphony.xwork2.ActionSupport" method="execute">

          <!--result:结果。表示 action 方法执行后可能返回一个结果。所以一个 action 节点可能会有多个 result 子节点,多个 result 子节点使用 name 来区分。

              name:标识一个 result,和 action方法的返回值对应,默认值为 success。

              type:表示结果的类型。默认值为 diapatcher(转发到结果)-->

          <result name="success" type="dispatcher">/WEB-INF/page/input.jsp</result>

      </action>

    </package>

    关于 Strutts2 请求的扩展名:

      在 org.apache.struts2 包下的 default.properties 中配置了 Struts2 应用的一些常量。

      配置 Struts 可以受理的请求 的扩展名,在 struts.xml 文件中以常量配置的方式修改 default.properties 所配置的常量。

    例如:<constant name="struts.action.extension"  value="action,do"></constant>

    ActionSupport:

      1)、ActionSupport 是默认的 Action 类,若某个 action 节点没有配置 class 属性,则 ActionSupport 即为待执行的 Action 类。 而 execute 方法即为要默认执行的 action 方法。

      2)、在手工完成字段验证,显示错误消息,国际化等情况下,推荐继承 ActionSupport 。

    result:

      result 代表 action 方法执行后,可能去的一个目的地。

      一个 action 节点,可以配置多个 result 子节点。

      result 的 name 属性值对应值 action方法可能有的一个返回值。

      result 一共有两个属性,还有一个是 type:表示结果的响应类型。

    --result 的 type 属性值,在struts-default 包的 result-type 节点的 name 属性中定义。

      常用的有:

      > dispatcher(默认的):转发。同 Servlet 中的转发。

      例:<result name="a" type="dispatcher">/a.jsp</result>

      > redirect:重定向。

      例:<result name="b" type="redirect">/b.jsp</result>

      > redirectAction:重定向到一个Action。注意:通过 redirect 也可以便捷的实现 redirectAction 的功能。

      例:<result name="c" type="redirectAction">

          <param name="actionName">testAction</param>

          <param name="namespace">/hnust</param>

        </result>

      还需要再写一个 packa:

      <package name="test" namespace="/hnust" extends="struts-default">

        <action name="testAction" class="com.hnust.struts2.action.TestAction">

          <result>/success.jsp</result>

        </action>

      </package>

      > chain:转发到一个 Action。注意:不能通过 diapatcher 的方式转发到一个 Action。

      例:<result name="d" type="chain">

          <param name="actionName">testAction</param>

          <param name="namespace">/hnust</param>

        </result>

  • 相关阅读:
    Spring AOP 随记
    Java设计模式系列 — 构造器模式
    【Java线程安全】 — 常用数据结构及原理(未完结)
    【最佳实践】好用的Quartz管理器类
    Timer和时间调度
    Java9之HashMap与ConcurrentHashMap
    记一次maven的包冲突经历
    hbase高可用集群部署(cdh)
    HBase 1.2.6 完全分布式集群安装部署详细过程
    hadoop-2.7.3完全分布式部署
  • 原文地址:https://www.cnblogs.com/daoxiaobai/p/6561976.html
Copyright © 2011-2022 走看看