文档章节

Struts2 零配置注意事项

完美世界
 完美世界
发布于 2014/06/05 16:39
字数 478
阅读 27
收藏 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
2018/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
Helloworld Structs2 注意事项

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

ysisl222
2009/03/26
0
0
web项目脚手架--Rapid Framework

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

匿名
2009/04/28
21.9K
4

没有更多内容

加载失败,请刷新页面

加载更多

产品分析感悟

我终于写完了我的第一份产品分析,按理说,内心应该很高兴才对,但是并没有,我此刻心情很沉重。 好吧,我全交代。。。 在这写篇文章之前,我仿佛打了鸡血般,以为自己打开了新的知识大门,我...

铸剑为犁413
6分钟前
0
0
如何使用less实现随机下雪动画详解

冬天来了,设计师说摇摇乐的场景需要随机下落的雪花动画,第一时间就想到的方法是canvas比较好,项目非常紧急,然而小程序对canvas支持不够友好,容易在项目中出现无法预估的兼容性问题 ,马...

前端小攻略
12分钟前
0
0
一个程序员的成长之路(转)

转自全民直播CTO张云龙讲述的一个程序员的成长之路,觉得有一定的借鉴性,分享一下。 https://github.com/fouber/blog/issues/41

酷沃
12分钟前
0
0
https

进入阿里云域名后台,修改DNS为阿里云官方DNS(默认为官方),然后点击“免费开启SSL证书” 点击“申请”、“验证”并等待签发 然后根据自己的服务器类型下载对应的证书 我使用的是lnmpa工具...

临江仙卜算子
39分钟前
0
0
Quartz监听器Listerner

概述 Quartz的监听器用于当任务调度中你所关注事件发生时,能够及时获取这一事件的通知。Quartz监听器主要有JobListener、TriggerListener、SchedulerListener三种,顾名思义,分别表示任务、...

大笨象会跳舞吧
今天
4
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部