一.struts2的常量配置
struts2按如下搜索顺序加载struts2常量(推荐使用struts.xml配置)
struts.xml->struts.properties->web.xml
如果在多个文件中配置了同一个struts2常量,则后一个文件中配置的常量值会覆盖前面文件中配置的常量值。
二.struts2中的action访问Servle API使用struts中的ActionContex类。
ActionContext ctx = ActionContext.getContext();
ctx.put("username","tao");
ctx.getSession.put("password","123");
ctx.getApplication.put("tip","Welcome!");
三.struts2中的命名空间
struts2中的命名空间只有一个级别,如果请求的URL是/bookservice/search/get.action 系统将先在/bookservice/search的命名空间中查找名为get的Action,如果在该命名空间中找到了名为get的Action,则由该Action处理用户请求,如果在该命名空间中没有找到名为get的Action,系统将直接进入默认的命名空间中查找名为get的Action,而不会在/bookservice的命名空间中查找名为get的Action.
四.struts2中的通配符匹配顺序
如果有URL为abcAction.action的请求,如果struts.xml文件中有名为abcAction的Action,则一定由该Action来处理用户请求,如果struts.xml文件中没有abcAction的Action,则搜寻name属性能匹配的abcAction的Action,例如name为*Action或*,*Action并不会比*有更高的优先级,而是先找到那个能匹配,就会由哪个Action来处理用户请求。
五.struts2中配置处理结果-全局结果与局部结果
如果一个Action里包含了与全局结果里同名的结果,则Action里的局部Result会覆盖全局的Result。
六.struts2中的零配置
在web.xml中的filter加入如下配置来支持struts2的零配置
<init-param>
<param-name>actionPackages</param-name>
<param-value>加入需要零配置的包</param-value>
</init-param>
struts2的Action的name由该Action类名决定,如果Action类的类名有“Action”后缀,则将该后缀去掉,接着把Action类名首字母小写,其他部分保持不变最为Action的name。
-----------------------------华丽的分割线-------------------------------------------------------------------------
1.struts2中的文件上传的类型问题
<package name="struts2_addcompany" extends="struts-default" namespace="/addcompany">
<action name="addCompany" class="addCompany">
<result type="redirect">/addcompanySuccess.jsp</result>
<result name="input" type="redirect">/addcompany.jsp</result>
<result name="error" type="redirect">/addcompany.jsp</result>
<interceptor-ref name="fileUpload">
<param name="maximumSize">1024*1024</param>
<!-- 允许上传文件格式gif、jpg、png、doc、ppt、swf、txt-->
<param name="allowedTypes">image/gif,image/pjpeg,image/x-png,
application/msword,application/vnd.ms-powerpoint,application/x-shockwave-flash,text/plain</param>
</interceptor-ref>
<interceptor-ref name="defaultStack"></interceptor-ref>
</action>
</package>其中格式对应如下:
gif------------------------image/gif
jpg------------------------image/pjpeg
png------------------------image/x-png
ppt------------------------application/vnd.ms-powerpoint
doc------------------------application/msword
swf------------------------application/x-shockwave-flash
txt------------------------text/plain
struts2按如下搜索顺序加载struts2常量(推荐使用struts.xml配置)
struts.xml->struts.properties->web.xml
如果在多个文件中配置了同一个struts2常量,则后一个文件中配置的常量值会覆盖前面文件中配置的常量值。
二.struts2中的action访问Servle API使用struts中的ActionContex类。
ActionContext ctx = ActionContext.getContext();
ctx.put("username","tao");
ctx.getSession.put("password","123");
ctx.getApplication.put("tip","Welcome!");
三.struts2中的命名空间
struts2中的命名空间只有一个级别,如果请求的URL是/bookservice/search/get.action 系统将先在/bookservice/search的命名空间中查找名为get的Action,如果在该命名空间中找到了名为get的Action,则由该Action处理用户请求,如果在该命名空间中没有找到名为get的Action,系统将直接进入默认的命名空间中查找名为get的Action,而不会在/bookservice的命名空间中查找名为get的Action.
四.struts2中的通配符匹配顺序
如果有URL为abcAction.action的请求,如果struts.xml文件中有名为abcAction的Action,则一定由该Action来处理用户请求,如果struts.xml文件中没有abcAction的Action,则搜寻name属性能匹配的abcAction的Action,例如name为*Action或*,*Action并不会比*有更高的优先级,而是先找到那个能匹配,就会由哪个Action来处理用户请求。
五.struts2中配置处理结果-全局结果与局部结果
如果一个Action里包含了与全局结果里同名的结果,则Action里的局部Result会覆盖全局的Result。
六.struts2中的零配置
在web.xml中的filter加入如下配置来支持struts2的零配置
<init-param>
<param-name>actionPackages</param-name>
<param-value>加入需要零配置的包</param-value>
</init-param>
struts2的Action的name由该Action类名决定,如果Action类的类名有“Action”后缀,则将该后缀去掉,接着把Action类名首字母小写,其他部分保持不变最为Action的name。
-----------------------------华丽的分割线-------------------------------------------------------------------------
1.struts2中的文件上传的类型问题
<package name="struts2_addcompany" extends="struts-default" namespace="/addcompany">
<action name="addCompany" class="addCompany">
<result type="redirect">/addcompanySuccess.jsp</result>
<result name="input" type="redirect">/addcompany.jsp</result>
<result name="error" type="redirect">/addcompany.jsp</result>
<interceptor-ref name="fileUpload">
<param name="maximumSize">1024*1024</param>
<!-- 允许上传文件格式gif、jpg、png、doc、ppt、swf、txt-->
<param name="allowedTypes">image/gif,image/pjpeg,image/x-png,
application/msword,application/vnd.ms-powerpoint,application/x-shockwave-flash,text/plain</param>
</interceptor-ref>
<interceptor-ref name="defaultStack"></interceptor-ref>
</action>
</package>其中格式对应如下:
gif------------------------image/gif
jpg------------------------image/pjpeg
png------------------------image/x-png
ppt------------------------application/vnd.ms-powerpoint
doc------------------------application/msword
swf------------------------application/x-shockwave-flash
txt------------------------text/plain