【struts2笔记一】使用struts2-convention-plugin及注解注册action

原创 2018年04月17日 13:45:54

使用struts2-convention-plugin及注解注册action

新公司采用struts2,之前一直采用spring-mvc对struts快忘光了,重新学习下struts2的使用。
本文的环境已经集成了spring,集成的步骤参考这篇文章

1.引入struts2-convention-plugin包

在pom.xml中加入以下代码块

  <!-- convention-plugin插件,使用了这个插件之后,就可以采用注解的方式配置Action -->  
  <dependency> 
    <groupId>org.apache.struts</groupId>  
    <artifactId>struts2-convention-plugin</artifactId>  
    <version>${struts2.version}</version> 
  </dependency>  
  <!--config-browser-plugin插件,使用了这个插件之后,就可以很方便的浏览项目中的所有action及其与 jsp view的映射 -->  
  <dependency> 
    <groupId>org.apache.struts</groupId>  
    <artifactId>struts2-config-browser-plugin</artifactId>  
    <version>${struts2.version}</version> 
  </dependency> 

struts2-config-browser-plugin的作用是查看action是否被注册上,省去了访问action地址来查看是否成功的过程,访问
http://localhost:8080/web-war/config-browser/actionNames.action 即可查看action情况。
效果

2.在struts.xml中配置struts2-convention-plugin

在配置文件中加入如下两句

<constant name="strutsnvention.package.locators" value="action" />
<constant name="struts.convention.action.includeJars" value=".*?/web-service.*?jar(!/)?,.*?/web-service*?jar(!/)?"></constant>

strutsnvention.package.locators 的作用是配置convention插件去扫描action包下面的action。默认也会扫描到这个路径,其实是多余配置,如果action在其他包下可以修改这个配置项。
struts.convention.action.includeJars 的作用是让convention插件去扫描特定的jar包,convention插件在默认的情况下是不会扫描jar中的action。另外jar的格式要规范才能被convention插件扫描到,如果没有被扫描到可以在pom文件(jar项目的)中加入如下配置

<build> 
  <plugins> 
    <plugin> 
      <groupId>org.apache.maven.plugins</groupId>  
      <artifactId>maven-jar-plugin</artifactId>  
      <version>2.3.1</version>  
      <configuration> 
        <archive> 
          <addMavenDescriptor>false</addMavenDescriptor>  
          <manifest> 
            <addDefaultImplementationEntries>true</addDefaultImplementationEntries>  
            <addDefaultSpecificationEntries>true</addDefaultSpecificationEntries> 
          </manifest> 
        </archive> 
      </configuration> 
    </plugin> 
  </plugins> 
</build>

convention插件的其他配置项不在这里详细介绍,可以参考我的后续微博,也可以参考这篇博客

3.编写action测试类

在package com.fyuhome.action包下创建TestSuAction

package com.fyuhome.action;

import org.apache.struts2.convention.annotation.Action;

@Action
public class TestSuAction  { //extends ActionSupport 不使用注解的形式

    public void test(){
        System.out.println("进入TestAction");
    }
}

到此为止这个action已经被注册上。
这里写图片描述
可以通过http://localhost:8080/web-war/test-su!test.action 这个地址进行访问,当然返回的是空白页。

java痛苦学习之路[四]---关于struts2-convention-plugin使用

struts2-convention-plugin 简化了Strut2配置过程,从繁琐的配置过程走出来,我也是学习过程中,有很多也不是懂,目前已经有个雏形了,希望对于初学者有个帮助...
  • yanglidong
  • yanglidong
  • 2014-07-15 13:50:05
  • 7977

struts2采用convention-plugin实现零配置,Struts2 Convention插件的使用

使用Convention插件,你需要将其JAR文件放到你应用的WEB-INF/lib目录中,你也可以在你Maven项目的POM文件中添加下面包依赖 org.apache.s...
  • lexang1
  • lexang1
  • 2016-09-29 18:51:18
  • 1832

Struts2的convention插件,在步骤中使用Action注解跳转到其他jsp页面

Struts2的convention插件,在方法中使用Action注解跳转到其他jsp页面   我们都清楚使用convention插件可以是struts2为零配置,默认情况下convention...
  • flsmgf
  • flsmgf
  • 2016-05-26 01:31:37
  • 1503

struts2中使用注解配置Action

使用注解来配置Action可以实现零配置,零配置将从基于纯XML的配置转化为基于注解的配置。使用注解,可以在大多数情况下避免使用struts.xml文件来进行配置。        struts2框架...
  • wojiaohuangyu
  • wojiaohuangyu
  • 2016-05-21 19:11:53
  • 15578

struts2使用注解配置Action传参方式

@Action(value = "operatorRoleAction", results = { @Result(name = "view", location = "/bussiness/oper...
  • beiguofengguang
  • beiguofengguang
  • 2012-09-06 17:06:37
  • 5508

Struts2注解配置之@Action(二)

当注解配置能够简化繁杂的xml,你是否想过也要使用注解? 最近对原有项目的框架使用的Struts2进行升级。很早以前就想尝试注解的方式进行配置。但是由于项目稳定性和改配置方式可能带来的问题一直没有进行...
  • spyjava
  • spyjava
  • 2013-10-30 22:51:42
  • 37453

struts2注解中的params传参

最近写程序时遇见一个需求,在一个action完成后,在最后的return时得跳转到另外一个action中,并且需要改变URL, 所以只能用redirect, 但需要传递几个参数到另外一action中。...
  • awen_c
  • awen_c
  • 2014-05-21 18:05:34
  • 4199

Struts2的使用注解配置Action(零配置)

首先引入struts2注解的jar包
  • u013614451
  • u013614451
  • 2014-11-23 22:11:18
  • 6649

struts2 注解方式注册action中 namespace 的注意事项

@SuppressWarnings("serial") @ParentPackage("struts-default") @Namespace(value="/deptConfig") @Contro...
  • z69183787
  • z69183787
  • 2012-10-24 10:02:26
  • 4824

struts2 convention插件的使用(一)

struts2 convention插件的相关文章在网络上还很少,今天研究了一下 官方文档 http://cwiki.apache.org/WW/convention-plugin.html ...
  • luckily01
  • luckily01
  • 2012-11-27 18:23:29
  • 5078
收藏助手
不良信息举报
您举报文章:【struts2笔记一】使用struts2-convention-plugin及注解注册action
举报原因:
原因补充:

(最多只允许输入30个字)