`
irfen
  • 浏览: 204878 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

关于struts2如何去掉默认的后缀(.action)

阅读更多

struts2是可以配置默认的后缀名的,如http://localhost:8080/test.action,这个是默认的,但是也可以通过配置去修改这个.action为别的。

这里是通过一个常量配置改变的。

 

<constant name="struts.action.extension" value="do"/>

 这样的就会变为http://localhost:8080/test.do来访问。

 

但是我很不喜欢有后缀,百度了很多大家的结论一般都是使SmartUrls和urlrewritefilter这两个解决,但是我只是想把后缀去掉而已,就让我增加别的组件这个实在很不爽,最后终于找到了个方法:

 

<constant name="struts.action.extension" value=","/>

 在这里把value配置为,就可以使用http://localhost:8080/test完成访问了

 

把这段注释加上吧,大家可以看看

 

### Used by the DefaultActionMapper
### You may provide a comma separated list, e.g. struts.action.extension=action,jnlp,do
### The blank extension allows you to match directory listings as well as pure action names
### without interfering with static resources, which can be specified as an empty string
### prior to a comma e.g. struts.action.extension=, or struts.action.extension=x,y,z,,
struts.action.extension=action,,

 

发表自本人博客  http://irfen.me

10
0
分享到:
评论
14 楼 irfen 2014-02-19  
yccn 写道
默认就可以没有后缀啊

默认有时候会自动加上.action
13 楼 irfen 2014-02-19  
string2020 写道
楼主,你这是官方的配置方法,还是你自己试出来的

在struts2的默认常量配置文件中(default.properties,在struts-core-2.3.x.jar的org.apache.struts2下),有这么一段内容
### Used by the DefaultActionMapper
### You may provide a comma separated list, e.g. struts.action.extension=action,jnlp,do
### The blank extension allows you to match directory listings as well as pure action names
### without interfering with static resources, which can be specified as an empty string
### prior to a comma e.g. struts.action.extension=, or struts.action.extension=x,y,z,,
struts.action.extension=action,,
12 楼 irfen 2014-02-19  
alvin198761 写道
这样子可能会导致很多问题,比如 Servlet不能正常使用,

这个我们项目里几乎都交给struts2处理的,原生的servlet没有使用,但是如果真的需要用servlet的话可以通过其他配置不拦截这些请求
11 楼 irfen 2014-02-19  
string2020 写道
楼主,在实际生产中这样用过吗?

我们这里项目就是这样用的,并没有产生像2楼说的上传下载被拦截的情况
10 楼 ray_yui 2014-02-11  
本來默認就可以沒有
9 楼 string2020 2014-02-11  
楼主,你这是官方的配置方法,还是你自己试出来的
8 楼 yccn 2014-02-11  
默认就可以没有后缀啊
7 楼 sweat89 2014-02-11  
alvin198761 写道
这样子可能会导致很多问题,比如 Servlet不能正常使用,

你们的做法是?
6 楼 alvin198761 2014-02-11  
这样子可能会导致很多问题,比如 Servlet不能正常使用,
5 楼 sbpcx 2014-02-10  
谢谢分享。
4 楼 bnboo77 2014-02-10  
mark一下。以后估计会碰到。
3 楼 string2020 2014-02-10  
楼主,在实际生产中这样用过吗?
2 楼 liufangmeng 2014-02-10  
这个不建议酱紫做。
因为上传下载可能会被拦截
1 楼 songbgi 2014-02-10  
mark一下

相关推荐

    去掉.action去掉.do字样 隐藏struts2 URL地址action, strus1的扩展名do也是同理.zip

    本篇文章将详细介绍如何在Struts2中去除.action后缀,以及Struts1中隐藏.do扩展名,使URL更加简洁。 首先,让我们来看看Struts2的情况。在Struts2中,默认情况下,所有的请求都会映射到.action结尾的URL上。为了...

    Struts课堂笔记.rar--struts2的struts.properties配置文件详解

    用URL扩展名来确定是否这个请求是被用作Struts action,其实也就是设置 action的后缀,例如login.do的'do'字。 struts.configuration The org.apache.struts2.config.Configuration implementation class org....

    Struts2属性文件详解.doc

    13. `struts.action.extension`:设置Struts2处理的请求后缀,默认是`action`,这意味着所有以`.action`结尾的请求会被Struts2拦截。可以使用逗号分隔多个后缀。 14. `struts.serve.static`:决定是否通过JAR文件...

    Struts2的常量详解

    struts.action.extension 属性指定需要 Struts 2 处理的请求后缀,该属性的默认值是 action,即所有匹配*.action 的请求都由 Struts 2 处理。 14. struts.serve.static struts.serve.static 属性设置是否通过 JAR ...

    struts2改写url后缀demo

    在Struts2中,URL通常以`.do`结尾,这是默认的Action映射后缀。然而,为了提供更加用户友好的URL和提高搜索引擎优化(SEO),开发者可能希望将这些后缀更改为更自然的扩展名,如`.html`。本教程将深入探讨如何在...

    struts2 上传图片限制.

    - `struts-default`:继承自Struts2默认的包配置,包含了一系列默认拦截器。 #### 四、文件上传限制实现 为了确保系统稳定运行,通常需要对上传的文件施加以下限制: 1. **文件大小**:通过配置`struts.multipart...

    STRUTS2 Convention零配置

    - **Action类的位置**:Convention插件会默认扫描特定包下的Action类,例如`action`, `actions`, `struts`, `struts2`等包名下的Java文件会被视为Action。 - **Action类的命名规则**:按照约定,如果Action类名为`...

    Struts2常用常量.doc

    - **作用**:此常量用于指定加载Struts2配置文件管理器,默认为`org.apache.struts2.config.DefaultConfiguration`。开发者可以根据需要自定义配置文件管理器,只需确保实现`Configuration`接口即可。 - **示例...

    struts.properties详解

    - **struts.action.extension**:指定Struts2处理的请求后缀,默认为`action`。多个后缀间以逗号分隔。 #### 8. 静态资源服务 - **struts.serve.static**:设置是否通过JAR文件提供静态内容服务,默认为`true`。 - ...

    Struts2属性文件详解

    此属性指定了需要Struts 2处理的请求后缀,默认值为`action`,即所有匹配`*.action`的请求都将由Struts 2处理。如果需要指定多个请求后缀,可以用英文逗号`,`分隔。 #### struts.serve.static 设置了是否通过JAR...

    Struts 2 properties文件详解

    **描述**: 此属性用于指定Struts 2使用的默认对象工厂,默认为 `spring`,这意味着Struts 2默认使用Spring框架作为对象工厂。如果需要更改此行为,可以将此属性设置为其他已注册的对象工厂名称。 **示例代码**: ``...

    STRUTS2零配置.doc

    默认情况下,它会查看`action`、`actions`、`struts`和`struts2`包下的所有类。Action的识别标准是:一是实现`com.opensymphony.xwork2.Action`接口的类,二是类名以`Action`结尾的类。 Convention插件提供了三个...

    struts2注解使用.doc

    - 为了查看和调试Struts2应用中的Action和其他资源映射,可以使用Config Browser插件。它提供了一个图形化的界面,显示所有配置信息。 通过这些机制,Struts2的Convetion插件极大地简化了开发流程,提高了开发效率...

    struts2核心配置文件

    - **struts.action.extension**:指定需要Struts2处理的请求后缀,默认值为 `action`。 #### 四、总结 通过以上对 `struts.xml` 和 `struts.properties` 文件的详细介绍,我们可以看出这两个文件在Struts2框架中的...

    Struts2中struts_xml的Action配置详解

    在这个例子中,`saveUser`是Action的名称,当用户发送一个以`saveUser`为后缀的请求时,Struts2会将该请求映射到`SaveUserAction`类。 `class`属性指定Action的实现类,即处理请求的Java对象。这个类通常需要继承自...

    struts.properties文件详解

    13. `struts.action.extension`: 设定 Struts2 处理的请求后缀,默认是 `action`,如需处理多个后缀,用逗号分隔。 14. `struts.serve.static`: 控制是否通过 JAR 文件提供静态内容,如 CSS、JavaScript 等,默认为...

    简述STRUTS2_Convention零配置

    - `struts.convention.action.packages`:除了默认的四个包(action, actions, struts, struts2),这个常量可以指定额外的包来寻找Action类。 在映射Action时,Convention遵循以下规则: 1. **Action名称映射**...

    Struts2注解详细说明文档

    例如,可以设置`struts.convention.action.suffix`来指定Action类名的后缀,默认为`Action`。 ```xml &lt;constant name="struts.convention.action.suffix" value="Controller"/&gt; ``` ##### 3.3 REST支持 如果希望...

    struts2配置文件详细说明

    - `struts.action.extension`定义了Struts2处理的请求后缀,默认是`action`,可以添加多个后缀,如`do, action,`。 - `struts.serve.static.browserCache`控制静态内容是否被浏览器缓存,`false`表示开发阶段禁用...

Global site tag (gtag.js) - Google Analytics