SSH框架之Struts的默认访问后缀、相同访问路径问题、常量

原创 2017年01月03日 13:47:51

一、Struts中默认访问后缀:
1、Struts1中默认访问后缀是*.do
2、Struts2中默认访问后缀是*.action

3、如何修改默认访问后缀:
1)Struts2的.action访问后缀在哪里定义?
Struts-core-2.3.4.1.jar/org.apache.struts/default.properties中的

struts.action.extension=action,,

2)在struts.xml中进行对常量的修改
所有的项目都要使用,是一个全局配置,所以位置应该位于:
<struts>标签的后面,<package>标签的前面!

<!--指定访问后缀为action/do/没有访问后缀,都可以-->
<constant name="struts.action.extension" value="action,do,"></constant>

4、情况分析

value="action,,"
    localhost:8080/struts_02/user_register          OK
    localhost:8080/struts_02/user_register.action   OK

value="action,"value="action"
    localhost:8080/struts_02/user_register.action   OK

value="action,do,"
    localhost:8080/struts_02/user_register          OK
    localhost:8080/struts_02/user_register.do       OK
    localhost:8080/struts_02/user_register.action   OK

value="action,do"
    localhost:8080/struts_02/user_register.do       OK
    localhost:8080/struts_02/user_register.action   OK

二、相同访问路径问题
问题产生:
1、Action

2、struts.xml

<action name="user_*" class="sram.config.UserAction4" method="{1}">
    <result name="success">/index.jsp</result>
</action>

<action name="user_*" class="sram.config2.UserAction" method="{1}">
    <result name="success">/index.jsp</result>
</action>

3、由于上述情况,所以二者想要访问register方法的访问路径均为:
http://localhost:8080/struts_02/user_register

结果:
当我们访问此路径时,运行情况到底如何?

由此可见,配置在前面的会被配置在后面的覆盖掉

三、Struts中的常量(Struts-core-2.3.4.1.jar/org.apache.struts/default.properties中)
1、详解:

<!--指定默认编码集,作用于HttpServletRequest的setCharacterEncoding方法 和freemarker 、velocity的输出(仅对POST起作用)-->
<constant name="struts.i18n.encoding" value="UTF-8"/>

<!--自定义后缀修改常量-->
<constant name="struts.action.extension" value="do"/>

<!--设置浏览器是否缓存静态内容,默认值为true(生产环境下使用),开发阶段最好关闭 -->
<constant name="struts.serve.static.browserCache" value="false"/>

<!--当struts的配置文件修改后,系统是否自动重新加载该文件,默认值为false(生产环境下使用),开发阶段最好打开 -->
<constant name="struts.configuration.xml.reload" value="true"/>

<!--开发模式下使用,这样可以打印出更详细的错误信息 -->
<constant name="struts.devMode" value="true" />

<!--默认的视图主题 -->
<constant name="struts.ui.theme" value="simple" />

<!--与spring集成时,指定由spring负责action对象的创建--> 
<constant name="struts.objectFactory" value="spring" />

<!--该属性设置Struts 2是否支持动态方法调用,该属性的默认值是true。如果需要关闭动态方法调用,则可设置该属性为 false-->
<constant name="struts.enable.DynamicMethodInvocation" value="false"/>

<!--上传文件的大小限制,value的值为单位字节-->
<constant name="struts.multipart.maxSize" value=“10701096"/>

2、应用:动态方法调用(不推荐使用,原因:这种形式,需要对程序结构有所了解,不安全)
1、动态方法调用语法:action name+!+方法名
2、举例:

版权声明:本文为博主原创文章,未经博主允许不得转载。

ssm框架---点击修改的时候:路径/项目/stu/stu/updateSave.do的404页面

StuController.java package com.demo.controller; import java.util.List; import org.springframework....
  • sinat_33949861
  • sinat_33949861
  • 2017年01月05日 11:42
  • 942

SSH框架中如何输出访问的Action路径和页面

在一般的SSH框架开发的系统中后期会有很多的类和jsp,如果需要维护就需要去配置文件中一个一个的去找相应的类映射和返回的jsp页面,非常麻烦。 其实利用struts2的Interceptor可以很轻...
  • avwjq
  • avwjq
  • 2014年11月07日 19:01
  • 1066

更改struts2的访问后缀名.action为.do或者其他的

设置Struts 2处理的请求后缀及Action调用 1、在struts2中默认处理的请求后缀为action,我们可以修改struts.xml 和struts.properties来修改默认...
  • u010695055
  • u010695055
  • 2014年05月29日 11:15
  • 1665

ssh框架配置文件路径总结

spring和Struts配置文件默认路径 spring Struts web.xml配置文件(无需配置路径) ...
  • qq_38030432
  • qq_38030432
  • 2017年04月22日 12:07
  • 410

web访问路径url省略jsp等后缀--伪静态

下载urlrewritefilter-4.0.3.jar添加到项目中在WEB-INF中新建urlrewrite.xml文件
  • kanglovejava
  • kanglovejava
  • 2017年04月12日 14:49
  • 984

ssh 不同的url后缀返回不同格式的数据解析

有时候我们在springmvc配置时,会遇到根据不同的url后缀返回不同格式的数据                                                        ...
  • fanfanzk1314
  • fanfanzk1314
  • 2017年05月24日 16:06
  • 195

Struts2 无后缀action请求

如果将Struts2的filter-mapping配置成 filter-mapping> filter-name>struts2filter-name> url-patter...
  • z69183787
  • z69183787
  • 2014年08月25日 18:37
  • 8655

【SSH快速进阶】——struts2调用action的三种方式

经过前段时间对struts2的学习与实践,总结了一下在struts2中调用action的三种方式。1、直接调用我前面的博客【SSH快速进阶】系列第一篇《【SSH快速进阶】——struts2简单的实例》...
  • huyuyang6688
  • huyuyang6688
  • 2015年10月12日 23:59
  • 2380

SSH:Struts2框架(Action的配置)

Struts2的核心功能是action,对于开发人员来说,使用Struts2主要就是编写action,action类通常都要实现com.opensymphony.xwork2.Action接口,并实现...
  • qq_27550755
  • qq_27550755
  • 2015年11月25日 15:49
  • 1815

ssh集成下的配置文件参数和存放位置详解

本人初级程序员,今天无聊做了个demo,此demo是SSH框架。由于太久没有搭建,前前后后也出现很多琐碎的问题,比如配置文件的存放和配置。 项目目录如图。hibernate.cfg.xml和s...
  • u013175941
  • u013175941
  • 2016年09月21日 17:36
  • 1324
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:SSH框架之Struts的默认访问后缀、相同访问路径问题、常量
举报原因:
原因补充:

(最多只允许输入30个字)