文档章节

Struts2 零配置注意事项

完美世界
 完美世界
发布于 2014/06/05 16:39
字数 478
阅读 25
收藏 0

命名空间:

@Namespace

当出现@Namespace时,它会取代当前所有Action的名空间。

例:当一个LoginAction在org.hzy.actions.xx下面中,其命名空间是/xx,(其LoginAction方法名叫login())

访问路径:http:localhost:8080:/struts2/xx/login,

出现@Namespace(“/aa”),则其名空间是/aa,访问/xx/login则找不到,而是/aa/login

访问路径:http:localhost:8080:/struts2/aa/login,

@Action

当@Action中最前面出现”/”时,它会忽略 @Namespace中的名空间,

例:上面是/aa/login,当出现@Action(“/ss”)时,这时的名空间是/,

访问路径:http:localhost:8080:/struts2/ss

而当@Action中没出现”/”时,它是走@Namespace的名空间,

例:上面是@Namespace(“/aa”),当出现@Action(“bb”)时,这时的名空间是/aa,

访问路径:http:localhost:8080:/struts2/aa/bb

当Action跳到JSP中,是以当前Action的名空间下去找的,

例:访问路径:http:localhost:8080:/struts2/aa/bb,它找bb对应的JSP,是在content/aa下找的,

是在Action当前名空间下找。

当在有效的名空间当中找不到action,零配置就会去找相应的jsp,两者都找不到则报错。

package org.hzy.actions.xx;
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.ResultPath;
@ResultPath(“/WEB-INF/Jsp”)//改变默认的/WEB-INF/content路径
//@Namespace(“/cc”)//覆盖org.hzy.actions.xx(/xx)
public class HelloWorldAction {
    //	@Actions({
            //	 @Action(“/aa”),
            //	 @Action(“/los”),
            //	 @Action(“bb”)  //是/cc/bb
    //	})
    public String login(){
        System.out.println(“helloworld!!!!!!!!!!!!!”);
        return “success”;
    }
}

Action跳转到action

(1)

@Action(“login”)//跳到login-query
public String login() throws Exception {
        // TODO Auto-generated method stub
        System.out.println(“login!!!!!!!!!!!!!!!!!!!!!”);
        System.out.println(this.uname);
        return “query”;
}
@Action(“login-query”)//对应的是content下面的login-query-los.jsp
public String query() throws Exception {
        // TODO Auto-generated method stub
        System.out.println(“query!!!!!!!!!!!!!!!!!!!!!”);
        System.out.println(this.uname);
        return “los”;
}

(2)

//这里location=”test”是跳到test action
@Results({ @Result(name = “failure”, location = “test”, type=”chain”) })
public class LosAction {
@Action(value = “url”, results = { @Result(name = “success”, location = “/WEB-INF/Jsp/los.jsp”, type = “chain”) })
public String login() throws Exception {
        // TODO Auto-generated method stub
        System.out.println(“los!!!!!!!!!!!!”);
        return “failure”; //会先找本身的result 再去找全局的
}
@Action(value = “test”, results = { @Result(name = “success”, location = “/WEB-INF/Jsp/los.jsp”, type = “dispatcher”) })
public String test() throws Exception {
        // TODO Auto-generated method stub
        System.out.println(“test!!!!!!!!!!!!”);
        return “success”;
}


© 著作权归作者所有

共有 人打赏支持
完美世界
粉丝 10
博文 151
码字总数 134011
作品 0
西城
高级程序员
私信 提问
spring+hibernate+struts2零配置整合

  说句实话,很久都没使用SSH开发项目了,但是出于各种原因,再次记录一下整合方式,纯注解零配置。 一。前期准备工作 gradle配置文件: version '1.0-SNAPSHOT' apply plugin: 'war' rep...

java~nick
03/21
0
0
struts2零配置插件-convention-plugin

在工程搭建时候遇到了一个struts2配置的convention-plugin配置错误的问题;将参数“struts.convention.action.packages”配置错误的问题。排除错误同时,复习了一下这个插件的配置。 参考文档...

wayne很忙
2013/04/06
0
0
Struts2返回JSON对象的方法总结

如果是作为客户端的HTTP+JSON接口工程,没有JSP等view视图的情况下,使用Jersery框架开发绝对是第一选择。而在基于Spring3 MVC的架构下,对HTTP+JSON的返回类型也有很好的支持。但是,在开发...

Zero__One
2013/01/16
0
1
web项目脚手架--Rapid Framework

基于spring,struts(struts2),hibernate的web项目脚手架 一个类似 ruby on rails 的java web快速开发脚手架,本着不重复发明轮子的原则,框架只是将零散的struts(struts2)+spring+hibernate各个...

匿名
2009/04/28
21.9K
4
Helloworld Structs2 注意事项

在Struts2的配置中,我几乎气得脑发楞,后来不上网,自己查看出错信息,又看了structs2使用手册.chm这个帮助手册,才摸出这两个地方: (1)在web.xml文件中的有关配置Struts2这个相当于一个...

ysisl222
2009/03/26
0
0

没有更多内容

加载失败,请刷新页面

加载更多

探索802.11ax

802.11ax承诺在真实条件下改善峰值性能和最差情况。 如何改善今天的Wi-Fi? 在决定如何改进当前版本以外的Wi-Fi时,802.11ac,IEEE和Wi-Fi联盟调查了Wi-Fi部署和行为,以确定更广泛使用的障碍...

linuxprobe16
45分钟前
2
0
使用linux将64G的SDCARD格式化为FAT32

一、命令如下: sudo fdisk -lsudo mkfs.vfat /dev/sda -Isudo fdisk /dev/sda Welcome to fdisk (util-linux 2.29.2). Changes will remain in memory only, until you decide to wri......

mbzhong
今天
4
0
深入理解Plasma(四):Plasma Cash

这一系列文章将围绕以太坊的二层扩容框架,介绍其基本运行原理,具体操作细节,安全性讨论以及未来研究方向等。本篇文章主要介绍在 Plasma 框架下的项目 Plasma Cash。 深入理解Plasma(1):...

HiBlock
昨天
1
0
命令参数的三大风格:Posix、BSD、GNU

今天读到命令行中参数的风格有三大类,即Unix/Posix、BSD、GNU。分别有以下特征: Unix/Posix风格,即命令后的参数,可以分组,便必须以连字符开头,如ps -aux。 BSD风格,即命令后的参数,可...

大别阿郎
昨天
2
0
PHP生成图片验证码

PHP生成图片验证码 /** * PHP生成图片验证码 * Class VerifyImage */class VerifyImage{ // 生成随机字串 private $verifyCode; // 图片对象 private $image; /**...

DrChenXX
昨天
1
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部