热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

struts2Convention插件零配置,使用注解开发

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

从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插件零配置,使用注解开发


推荐阅读
  • 二维码的实现与应用
    本文介绍了二维码的基本概念、分类及其优缺点,并详细描述了如何使用Java编程语言结合第三方库(如ZXing和qrcode.jar)来实现二维码的生成与解析。 ... [详细]
  • 本文介绍了如何通过C#语言调用动态链接库(DLL)中的函数来实现IC卡的基本操作,包括初始化设备、设置密码模式、获取设备状态等,并详细展示了将TextBox中的数据写入IC卡的具体实现方法。 ... [详细]
  • 在1995年,Simon Plouffe 发现了一种特殊的求和方法来表示某些常数。两年后,Bailey 和 Borwein 在他们的论文中发表了这一发现,这种方法被命名为 Bailey-Borwein-Plouffe (BBP) 公式。该问题要求计算圆周率 π 的第 n 个十六进制数字。 ... [详细]
  • 本文介绍了SIP(Session Initiation Protocol,会话发起协议)的基本概念、功能、消息格式及其实现机制。SIP是一种在IP网络上用于建立、管理和终止多媒体通信会话的应用层协议。 ... [详细]
  • 我的读书清单(持续更新)201705311.《一千零一夜》2006(四五年级)2.《中华上下五千年》2008(初一)3.《鲁滨孙漂流记》2008(初二)4.《钢铁是怎样炼成的》20 ... [详细]
  • 本文详细介绍了iOS应用的生命周期,包括各个状态及其转换过程中的关键方法调用。 ... [详细]
  • 本文探讨了如何通过Service Locator模式来简化和优化在B/S架构中的服务命名访问,特别是对于需要频繁访问的服务,如JNDI和XMLNS。该模式通过缓存机制减少了重复查找的成本,并提供了对多种服务的统一访问接口。 ... [详细]
  • H5技术实现经典游戏《贪吃蛇》
    本文将分享一个使用HTML5技术实现的经典小游戏——《贪吃蛇》。通过H5技术,我们将探讨如何构建这款游戏的两种主要玩法:积分闯关和无尽模式。 ... [详细]
  • JUnit下的测试和suite
    nsitionalENhttp:www.w3.orgTRxhtml1DTDxhtml1-transitional.dtd ... [详细]
  • 问题描述现在,不管开发一个多大的系统(至少我现在的部门是这样的),都会带一个日志功能;在实际开发过程中 ... [详细]
  • 本文详细介绍了C++中的构造函数,包括其定义、特点以及如何通过构造函数进行对象的初始化。此外,还探讨了转换构造函数的概念及其在不同情境下的应用,以及如何避免不必要的隐式类型转换。 ... [详细]
  • 解决JavaScript中法语字符排序问题
    在开发一个使用JavaScript、HTML和CSS的Web应用时,遇到从SQLite数据库中提取的法语词汇排序不正确的问题,特别是带重音符号的字母未按预期排序。 ... [详细]
  • 数据类型--char一、char1.1char占用2个字节char取值范围:【0~65535】char采用unicode编码方式char类型的字面量用单引号括起来char可以存储一 ... [详细]
  • 从CodeIgniter中提取图像处理组件
    本指南旨在帮助开发者在未使用CodeIgniter框架的情况下,如何独立使用其强大的图像处理功能,包括图像尺寸调整、创建缩略图、裁剪、旋转及添加水印等。 ... [详细]
  • 探索AI智能机器人自动盈利系统的构建
    用户可通过支付198元押金及30元设备维护费租赁AI智能机器人,推荐他人加入可获得相应佣金。随着推荐人数的增加,用户将逐步解锁更高版本,享受更多收益。 ... [详细]
author-avatar
mobiledu2502857697
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有