从struts21开始,struts2不再推荐使用codebehind作为零配置插件,而是改用Convention插件来支持零配置。与以前相比较,Convention插件更彻底。

使用Convention插件,需要将struts2-convention-plugin-2.3.1.2.jar文件复制到lib目录中即可

这个插件是自动搜索action的功能:

  规则如下:它会自动搜索位于action,actions,struts、struts2包下的java类。

         Convention插件会把如下两种java类当成action处理:

         1.所有实现了com.opensymphony.xwork2.Action的java类

         2.所有类名以Action结尾的java类

  找到了对应的action类之后,Convention插件会按照约定部署这些action,部署这些action时,action,actions,struts,struts2包会映射为根命名空间,而这些包下的

  子包则被映射为对应的命名空间。

这个插件的注解功能

  有时候对于struts2的应用,我们写了大量的xml配置,这个找到action,然后找配置,很不方便,结合注解开放,打开对应的action可以让人一目了然

   网上有很多前辈写了很多总结,我直接应用就可以了,哈哈

   引用:

http://blog.csdn.net/oathevil/article/details/7084979

   convention 插件官方学习文档

  

  自个的测试代码

   

package com.hu.web.action;//一定要在action、actions、struts、struts2 这种包下,不然插件扫描不到此action

import org.apache.struts2.convention.annotation.Action;
import org.apache.struts2.convention.annotation.Actions;
import org.apache.struts2.convention.annotation.Namespace;
import org.apache.struts2.convention.annotation.Result;
import org.apache.struts2.convention.annotation.ResultPath; import com.opensymphony.xwork2.ActionSupport; @Namespace("/test")//访问test空间
@ResultPath("/WEB-INF")//指定该action到/web-inf目录下寻找物理视图资源
public class LoginAction extends ActionSupport { private String name; private String pwd; private String tip; public String getName() {
return name;
} public void setName(String name) {
this.name = name;
} public String getPwd() {
return pwd;
} public void setPwd(String pwd) {
this.pwd = pwd;
} public String getTip() {
return tip;
} public void setTip(String tip) {
this.tip = tip;
} @Actions({
@Action(value="/test",results={
@Result(name="login",location="/index.jsp")
}),
@Action(value="/test1",params={"tip","当访问此action路径是,会注入tip属性值"})
})
public String login(){
System.out.println(1);
return "login";
}
}

软件,让生活变得更简单......

struts2 Convention插件零配置,使用注解开发的更多相关文章

  1. struts2 Convention插件好处及使用

    现在JAVA开发都流行SSH.而很大部分公司也使用了struts2进行开发..因为struts2提供了很多插件和标签方便使用..在之前开发过程中总发现使用了struts2会出现很多相应的配合文件.如果 ...

  2. 在windows下用eclipse + pydev插件来配置python的开发环境

    在windows下用eclipse + pydev插件来配置python的开发环境 一.安装 python 可以到网上下个Windows版的python,官网为:https://www.python. ...

  3. Struts2 Convention插件的使用(4)使用@Action注解返回json数据

    package com.hyy.action; import java.util.HashMap; import java.util.Map; import org.apache.struts2.co ...

  4. Struts2 Convention插件的使用(3)方法前的@Action注解

    package com.hyy.action; import org.apache.struts2.convention.annotation.Action; import com.opensymph ...

  5. struts2 convention插件

    1.struts2自2.1以后推荐使用Convention Plugin支持struts零配置支持(引入jar:struts2-convention-plugin-2.x.x.jar)①convent ...

  6. struts2 convention-plugin实现零配置

    零配置并不是没有配置,而是通过约定大于配置的方式,大量通过约定来调度页面的跳转而使得配置大大减少.使得Action等配置不必写在Struts.xml中. convention-plugin的约定 1. ...

  7. Struts2+Spring3+MyBatis3整合以及Spring注解开发

     分类: Web(2)  版权声明:本文为博主原创文章,未经博主允许不得转载. 最近在做一个SpringMVC+spring+MyBatis的项目,突然想起以前自己要搭建一个Struts2+Sprin ...

  8. Struts2 Convention插件的使用(1)

    刚刚查阅官方文档(convention-plugin.html)并学习了Struts2的Convention插件,文章这里只作为一个笔记,建议大家去看官方文档比较清晰和全面. 需要在项目添加这些包 c ...

  9. Struts2 convention插件试用+ Spring+Hibernate SSH整合

    第一步,引入struts2-convention-plugin-2.2.1.jar 然后,改动配置文件. 我是在struts.properties文件里改动的: struts.objectFactor ...

随机推荐

  1. MapReduce 运行机制

    Hadoop中的MapReduce是一个使用简单的软件框架,基于它写出来的应用程序能够运行在由上千个机器组成的大型集群上,并且以一种可靠容错并行处理TB级别的数据集. 一个MapReduce作业(jo ...

  2. IOS-NSDateFormatter使用介绍

    IOS-NSDateFormatter使用介绍 NSDateFormatter的使用: NSDate *nowDate = [[NSDate alloc] init]; NSDateFormatter ...

  3. docker入门(一)

    docker安装 yum install -y docker-io [root@centos ~]# yum install -y docker-io 已加载插件:fastestmirror, lan ...

  4. Android性能优化典范 - 第5季

    这是Android性能优化典范第5季的课程学习笔记,拖拖拉拉很久,记录分享给大家,请多多包涵担待指正!文章共10个段落,涉及的内容有:多线程并发的性能问题,介绍了AsyncTask,HandlerTh ...

  5. Customizing the Test Runner

    There are several situations where you want to customize Robolectric's test runner to perform some o ...

  6. 用户输出表单处理php

    php中的表单输入处理,我用两个文件,在linux输出: touch php_post1.html php_post1.php php_post1.html代码如下: <!doctype htm ...

  7. codevs 2822爱在心中

    不想吐槽题目.... /* K bulabula 算法(好像用哪个T bulabula更简单 然而我并不会 - -) 丑陋的处理cnt: Printf时 cnt中 ans[i][0]==1 的删掉 然 ...

  8. DataView操作DataTable

    1.DataView筛选数据 //假设有一个DataTable数据 DataTable dt = new DataTable(); //转成DefaultView DataView dv = dt.D ...

  9. HTML5 文件处理之FileAPI简介整理

    在众多HTML5规范中,有一部分规范是跟文件处理有关的,在早期的浏览器技术中,处理小量字符串是js最擅长的处理之一.但文件处理,尤其是二进制文件处理,一直是个空白.在一些情况下,我们不得不通过Flas ...

  10. 佳博GprinterApp编辑软件使用说明

    佳博打印机代理商淘宝店https://shop107172033.taobao.com/index.htm?spm=2013.1.w5002-9520741823.2.Sqz8Pf 在此店购买的打印机 ...