Struts2配置文件中使用通配符的方法(三种形式)

 更新时间:2019年11月25日 11:36:34   作者:在写代码的路上  
Struts2是一个基于MVC设计模式的Web应用框架,它本质上相当于一个servlet,在MVC设计模式中,Struts2作为控制器(Controller)来建立模型与视图的数据交互。这篇文章主要介绍了Struts2配置文件中使用通配符的相关知识,需要的朋友可以参考下

Struts2简介

Struts2是一个基于MVC设计模式的Web应用框架,它本质上相当于一个servlet,在MVC设计模式中,Struts2作为控制器(Controller)来建立模型与视图的数据交互。Struts 2是Struts的下一代产品,是在 struts 1和WebWork的技术基础上进行了合并的全新的Struts 2框架。其全新的Struts 2的体系结构与Struts 1的体系结构差别巨大。Struts 2以WebWork为核心,采用拦截器的机制来处理用户的请求,这样的设计也使得业务逻辑控制器能够与ServletAPI完全脱离开,所以Struts 2可以理解为WebWork的更新产品。虽然从Struts 1到Struts 2有着太大的变化,但是相对于WebWork,Struts 2的变化很小。

形式一:调用相同Action中的不同方法

<action name="*Action" class="Jcuckoo.LoginRegistAction" method="{1}">

<result name="input">/login.jsp</result> 
    <result name="error">/error.jsp</result> 
    <result name="success">/welcome.jsp</result>
</action>

其中表达式{1}的值name属性值中第一个*的值。

如果用户请求的URL为loginAction.action,则调用Jcuckoo.LoginRegistAction中的login方法;

如果用户请求的URL为registerAction.action,则调用Jcuckoo.LoginRegistAction中的register方法;

形式二:通过匹配,调用不同的Action的execute方法

<action name="*Action" class="Jcuckoo.{1}Action">

<result name="input">/login.jsp</result> 
    <result name="error">/error.jsp</result> 
    <result name="success">/welcome.jsp</result>
</action>

上面没有出现method属性,故默认调用对应的execute方法

如果用户请求的URL为LoginAction.action,则调用Jcuckoo.LoginAction中的execute方法;

如果用户请求的URL为RegisterAction.action,则调用Jcuckoo.RegisterAction中的execute方法;

形式三:动态结果

<action name="crud_*" class="Jcuckoo.CrudAction" method="{1}">

<result name="input">/input.jsp</result> 
    <result>/{1}.jsp</result>
</action>

当处理结果是input时,会转到/input.jsp页面

当处理结果是success时,

如果crud_create.action,则会执行Jcuckoo.CrudAction中的create方法,并且跳转到/create.jsp;
如果crud_delete.action,则会执行Jcuckoo.CrudAction中的delete方法,并且跳转到/delete.jsp;

总结

以上所述是小编给大家介绍的Struts2配置文件中使用通配符的方法,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对脚本之家网站的支持!
如果你觉得本文对你有帮助,欢迎转载,烦请注明出处,谢谢!

相关文章

  • 如何使用SpEL表达式实现动态分表查询

    如何使用SpEL表达式实现动态分表查询

    这篇文章主要介绍了如何使用SpEL表达式实现动态分表查询,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下
    2019-12-12
  • SpringBoot自定义定时任务的实现示例

    SpringBoot自定义定时任务的实现示例

    本文主要介绍了SpringBoot自定义定时任务,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2024-05-05
  • Java中对话框的弹出方法

    Java中对话框的弹出方法

    下面小编就为大家带来一篇Java中对话框的弹出方法。小编觉得挺不错的,现在就分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2016-10-10
  • 详述 DB2 分页查询及 Java 实现的示例

    详述 DB2 分页查询及 Java 实现的示例

    本篇文章主要介绍了详述 DB2 分页查询及 Java 实现的示例,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2017-09-09
  • Java为何需要平衡方法调用与内联

    Java为何需要平衡方法调用与内联

    这篇文章主要介绍了Java为何需要平衡方法调用与内联,帮助大家更好的理解和使用Java,感兴趣的朋友可以了解下
    2021-01-01
  • JavaWeb实现打印功能

    JavaWeb实现打印功能

    这篇文章主要介绍了JavaWeb实现打印功能的相关资料,非常不错具有参考借鉴价值,需要的朋友可以参考下
    2016-05-05
  • Maven 配置文件 生命周期 常用命令详解

    Maven 配置文件 生命周期 常用命令详解

    Maven是围绕着构建生命周期的核心概念为原型,整个项目的创建和部署都是围绕着生命周期展开的,一个生命周期由若干个生命周期阶段组成。下面通过本文给大家介绍Maven 配置文件 生命周期 常用命令详解,一起看看吧
    2017-11-11
  • SpringBoot中整合knife4j接口文档的实践

    SpringBoot中整合knife4j接口文档的实践

    这篇文章主要介绍了SpringBoot中整合knife4j接口文档的实践,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2020-09-09
  • SpringBoot结果封装和异常拦截的实现示例

    SpringBoot结果封装和异常拦截的实现示例

    SpringBoot 项目中,我们通常需要将结果数据封装成特定的格式,以方便客户端进行处理,本文主要介绍了SpringBoot 优雅的结果封装和异常拦截,感兴趣的可以了解一下
    2023-08-08
  • Springboot整合https的实例代码

    Springboot整合https的实例代码

    本文简单介绍了一些密码学的基础和如何通过Springboot整合HTTPS,本文将通过实例代码给大家详细介绍整合过程,感兴趣的朋友跟随小编一起看看吧
    2022-02-02

最新评论