Struts2的配置文件方法小结

 更新时间:2018年04月27日 11:39:10   作者:bgzyy  
最近正在学习Struts2,在配置文件中遇到好多标签,各种意义不同。下面这篇文章就来给大家介绍关于Struts2配置文件的相关资料,文中通过图文介绍的非常详细,需要的朋友们下面随着小编来一起学习学习吧。

Struts2

JAVA基础学完,肯定是要面临三大框架的学习的,作为初学者,了解三大框架的原理,设计目的是首要任务,只有在把握了框架的设计目的以后,才能有针对性的取学习使用框架,这里就要介绍下strue2框架了。

什么是Struts2?

Struts2 是一个非常优秀的MVC框架,基于Model2 设计模型

由传统Struts1和WebWork两个经典框架发展而来

Strust2 核心功能

(1)允许POJO(Plain Old Java Objects)对象 作为Action

(2)Action的execute 方法不再与Servlet API耦合,更易测试

(3)支持更多视图技术(JSP、FreeMarker、Velocity)

(4)基于Spring AOP思想的拦截器机制,更易扩展

(5)更强大、更易用输入校验功能

struts2 配置文件的 result 节点

result 节点是 action 节点的子节点,他代表着 action 方法执行后可能去的一个目的地;

Action 方法名和 action 节点的 method 属性相对应;

每个 Action 方法都会返回一个 String 类型的值且一一对应 result 节点的 name 属性,而 result 节点根据 name 属性值决定响应不一样的结果;

result 节点拥有两个属性,name(结果的名字,即 action 方法的返回值,默认为 SUCCESS) 和 type(响应结果的类型,默认值为 dispatcher)

如上图中圈 1 所, result 节点的值代表着此次 struts2 请求将会去的一个目的地

result 节点的结果类型(type)

dispatcher(转发)

dispatcher 是 struts2 框架的默认结果类型,也是最常用的结果类型,该类型有一个默认的参数 location,一般情况省略,如下两种写法等价:

dispatcher 结果类型将控制权转发给应用程序中的指定资源,若需要把控制权转发给 一个外部资源,则应使用 redirect 结果类型

redirect(重定向)

  • redirect 结果类型将把响应重定向到另一个资源,而不是转发给该资源
  • redirect 也拥有默认参数 location,同时还有一个 parse 参数,用来表明是否把 location 值视为一个 OGNL 表达式来解释,默认值为 true

chain (转发到一个 action)

  • 指定 result 结果响应类型为 chain,其可以用来构成一个 action 链,即前一个 action 把控制权转发给后一个 action,而前一个 action 的状态在后一个 action 中依然保存
  • chain 可接受的参数有 actionName 和 method,其中 actionName 指定目标 action 的名字,它是默认属性,method 指定目标 action 的方法,默认值为 execute

redirectAction (重定向到一个 action)

  • redirectAction 把响应重定向到另一个 action,同时拥有默认参数 actionName
  • 重定向到一个 action 可以使用 redirect 简洁的进行实现,但是转发到一个 action 不能使用 dispatcher 实现,如下两种写法等价

通配符映射

struts2 提供通配符映射机制将多个彼此相似的映射关系简化为一个映射关系

通配符映射规则

  • 若一个 action 请求找到多个匹配的 action,没有通配符的那个将会获胜
  • 若找不到指定的 action,struts2 将会尝试把这个 URL 与任何一个包含着通配符的动作匹配
  • 被通配符匹配到的 URI 字符串的子串可以利用 {1} {2} 来引用,比如四个 action 分别为
  • update-hello、query-hello、delete-hello、save-hello 那么在 struts.xml 文件中的 action
  • 的 name 属性则可以为 name = -hello,且在整个 action 节点中可以用 {1} 代表 所占用
  • 的字符串,class 中也可以使用 {1} 来代表类名
  • {0} 匹配整个 URL
  • 若 struts2 找到带有通配符的匹配有多个,则按先后顺序进行匹配

如图所示,在第一个 package 中,* 可代表第二个 package 中的他们四个。

总结

以上就是这篇文章的全部内容了,希望本文的内容对大家的学习或者工作具有一定的参考学习价值,如果有疑问大家可以留言交流,谢谢大家对脚本之家的支持。

相关文章

  • Spring Cloud学习教程之DiscoveryClient的深入探究

    Spring Cloud学习教程之DiscoveryClient的深入探究

    这篇文章主要给大家介绍了关于Spring Cloud学习教程之DiscoveryClient的相关资料,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧。
    2018-04-04
  • Java实现空指针后的猜拳游戏

    Java实现空指针后的猜拳游戏

    “java.lang.NullPointerException” 空指针异常可以说是Java程序最容易出现的异常了,小编写了一个 IDEA 插件,每当程序出现空指针异常时就会弹出一个“猜拳游戏”窗口,该窗口不能直接关闭,只有当你游戏获胜时,窗口才会自动关闭
    2022-09-09
  • Jmeter环境搭建及安装步骤

    Jmeter环境搭建及安装步骤

    Jmeter是纯Java开发的,能够运行Java程序的系统一般都可以运行Jmeter,本文以windows下安装步骤为例分步骤给大家介绍的非常详细,感兴趣的朋友跟随小编一起看看吧
    2021-12-12
  • 使用@PathVariable接收两个参数

    使用@PathVariable接收两个参数

    这篇文章主要介绍了使用@PathVariable接收两个参数的操作,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2021-08-08
  • 又又叕出BUG啦!理智分析Java NIO的ByteBuffer到底有多难用

    又又叕出BUG啦!理智分析Java NIO的ByteBuffer到底有多难用

    网络数据的基本单位永远是byte,Java NIO提供ByteBuffer作为字节的容器,但该类过于复杂,有点难用.本篇文章就带大家简单了解一下 ,需要的朋友可以参考下
    2021-06-06
  • 解决Eclipse配置Tomcat出现Cannot create a server using the selected type错误

    解决Eclipse配置Tomcat出现Cannot create a server using the selected

    这篇文章主要介绍了解决Eclipse配置Tomcat出现Cannot create a server using the selected type错误的相关资料,需要的朋友可以参考下
    2017-02-02
  • java中字符串替换常用的4种方法

    java中字符串替换常用的4种方法

    在Java中String类提供了许多方便的方法来处理字符串,下面这篇文章主要给大家介绍了关于java中字符串替换常用的4种方法,文中通过代码介绍的非常详细,需要的朋友可以参考下
    2024-03-03
  • Springboot整合SpringSecurity的完整案例详解

    Springboot整合SpringSecurity的完整案例详解

    Spring Security是基于Spring生态圈的,用于提供安全访问控制解决方案的框架,Spring Security登录认证主要涉及两个重要的接口 UserDetailService和UserDetails接口,本文对Springboot整合SpringSecurity过程给大家介绍的非常详细,需要的朋友参考下吧
    2024-01-01
  • Java ES(Elasticsearch) 中的and 和 or 查询

    Java ES(Elasticsearch) 中的and 和 or 查

    Elasticsearch 是一个分布式、高扩展、高实时的搜索与数据分析引擎,es中match查询中,查询字符串分词后,默认是or或者的关系,这篇文章主要介绍了ES 中的and 和 or 查询,需要的朋友可以参考下
    2022-11-11
  • javaweb servlet生成简单验证码

    javaweb servlet生成简单验证码

    这篇文章主要为大家详细介绍了javaweb servlet生成简单验证码,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2020-03-03

最新评论