SSH学习之Struts2中的配置文件

回忆

在SSH学习系列的SSH学习之Struts2的第一个Action中介绍了Struts2的第一个入门的action,如果是初学的可以不需要深究其中的某些概念,我会在接下来的内容介绍。

位置

Struts2的配置文件struts.xml文件的位置一般默认是在src目录下的,如果想要改变其存放的路径,就需要在web.xml中进行配置,否则就会报错。但是在配置的时候除了将改变后的路径。但是,必须要也要指定struts-default.xmlstruts-plugin.xml(struts-plugin.xml这是配插件的,如果没使用插件,这个也可以不配置)。
   
  
  	struts2
  	org.apache.struts2.dispatcher.ng.filter.StrutsPrepareAndExecuteFilter
  	
  		config
  		struts-default.xml,config/struts.xml,struts-plugin.xml
  	
  
  
  	struts2
  	/*
  


名称

Struts框架的配置文件名称必须是固定的,struts.xml。

package标签

  • name属性name值跟功能本身是没有相关联系的;在一个struts.xml配置文件中可以有多个package标签,但是name值必须不同。
  • extends属性extends属性值是固定的,其值为struts-default。只有写明了该属性,在package中的类才有action功能(也就是才有访问的功能)。值得注意的是如果有其他的package继承了另一个package,那么最顶级的那个package必须继承struts-default。
  • namespace属性默认值是/,可以不写明,但是推荐初学者写明。其值和action标签中的name值构成action的访问路径。

action标签

  • name属性name属性值就是访问action的路径,其值和namespace属性值构成访问路径。一个package标签中可以有多个action标签,但是name值是唯一的。
  • class属性class属性值就是action的全路径,包名+类名。
  • method属性默认值是execute,可以自定义一个值(值就是action里的方法名),指明action的执行方法。

result标签

result标签根据方法的返回值配置到不同的路径中去,包括页面跳转和action跳转等等。

  • name属性其值是方法的返回值,也就是method属性中指定的方法。
  • type属性其值表示如何到路径中去(重定向或重转发)。默认值是重转发。
    • 默认值是dispatcher,重转发(一次请求,地址栏不变),针对跳转页面的配置
    • redirect,重定向(两次请求,地址栏路径改变),针对跳转页面的配置
    • chain,转发action,一般不使用该值转发到其他action,因为存在缓存问题,针对跳转action的配置
    • redirectAction重定向action,针对跳转action的配置

constant标签

constant标签用来配置或修改Struts2框架里默认的常量的,Struts2中默认常量的配置是在struts-default.xml(struts2-core-xx.jar)文件中,
比如字符编码 等。以下是一些常用的常量设置。
  • struts.i18n.encoding,指明表单提交数据的编码格式(post和get都可以,这与servlet不同,post可以直接指定编码,get需要进行编码转换)。
  • struts.devMode,是否使用struts的开发模式。开发模式会有更多的调试信息。默认值为false(生产环境下使用),开发阶段最好打开。
  • struts.action.extension,指定被struts2处理的请求后缀类型。多个后缀名用逗号隔开。
在实际开发中可能还需要设置其他的一些常量,大家可以参看Struts2的API。

多余的话

 这是我的一些理解了,希望见谅。





你可能感兴趣的:(Struts2,SSH学习,struts,ssh,struts2.0,web)