首页 > 代码库 > Struts入门(二) 配置文件的讲解
Struts入门(二) 配置文件的讲解
上一章我们演示了Struts项目的搭建 可以看到里面有几个重要的配置文件 下面我们来说明一下这3个配置文件
1.web.xml
2.strtus.xml
3.struts.properties
1.web.xml
我们所学习的是MVC框架 不管是java还是.net 只要是web应用 就需要配置文件 .net中我们使用web.config来进行相关配置 Java中Servlet的应用则需要web.xml的配置
通常,所有的mvc框架都需要web应用加载一个核心控制器 对于Struts而言 则需要加载
StrutsPrepareAndExecuteFilter 其他不用管 web应用加载它后 struts2的框架会由它进行加载
web.xml如下 这里添加了struts2的过滤器配置
1 <?xml version="1.0" encoding="UTF-8"?> 2 <web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://java.sun.com/xml/ns/javaee" xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_3_0.xsd" id="WebApp_ID" version="3.0"> 3 <display-name>StrutsDemo</display-name> 4 5 <filter> 6 <filter-name>struts</filter-name> 7 8 <filter-class> org.apache.struts2.dispatcher.ng.filter.StrutsPrepareAndExecuteFilter</filter-class> 9 </filter>10 11 <filter-mapping>12 <filter-name>struts</filter-name>13 <url-pattern>/*</url-pattern>14 </filter-mapping>15 16 <welcome-file-list>17 <welcome-file>index.html</welcome-file>18 <welcome-file>index.htm</welcome-file>19 <welcome-file>index.jsp</welcome-file>20 <welcome-file>default.html</welcome-file>21 <welcome-file>default.htm</welcome-file>22 <welcome-file>default.jsp</welcome-file>23 </welcome-file-list>24 </web-app>
2.struts.xml
struts.xml中包含的内容:
1.全局属性
2.用户请求和相应Action之间的对应关系
3.Action可能用到的参数和返回结果
4.各种拦截器的配置
1 <!DOCTYPE struts PUBLIC "-//Apache Software Foundation//DTD Struts Configuration 2.0//EN" "http://struts.apache.org/dtds/struts-2.0.dtd" > 2 <struts> 3 4 <!-- include节点是struts2中组件化的方式 可以将每个功能模块独立到一个xml配置文件中 然后用include节点引用 --> 5 <include file="struts-default.xml"></include> 6 7 8 <!-- package提供了将多个Action组织为一个模块的方式 9 package的名字必须是唯一的 package可以扩展 当一个package扩展自10 另一个package时该package会在本身配置的基础上加入扩展的package11 的配置 父package必须在子package前配置 12 name:package名称13 extends:继承的父package名称14 abstract:设置package的属性为抽象的 抽象的package不能定义action 值true:false15 namespace:定义package命名空间 该命名空间影响到url的地址,例如此命名空间为/test那么访问是的地址为http://localhost:8080/struts2/test/XX.action16 -->17 <package name="com.kay.struts2" extends="struts-default" namespace="/test">18 <interceptors>19 <!-- 定义拦截器 20 name:拦截器名称21 class:拦截器类路径22 -->23 <interceptor name="timer" class="com.kay.timer"></interceptor>24 <interceptor name="logger" class="com.kay.logger"></interceptor>25 <!-- 定义拦截器栈 -->26 <interceptor-stack name="mystack">27 <interceptor-ref name="timer"></interceptor-ref>28 <interceptor-ref name="logger"></interceptor-ref>29 </interceptor-stack>30 </interceptors>31 32 <!-- 定义默认的拦截器 每个Action都会自动引用33 如果Action中引用了其它的拦截器 默认的拦截器将无效 -->34 <default-interceptor-ref name="mystack"></default-interceptor-ref>35 36 37 <!-- 全局results配置 -->38 <global-results>39 <result name="input">/error.jsp</result>40 </global-results>41 42 <!-- Action配置 一个Action可以被多次映射(只要action配置中的name不同)43 name:action名称 http://localhost:8080/ProjectName/hello.action44 class: 对应的类的路径45 method: 调用Action中的方法名46 -->47 <action name="hello" class="com.kay.struts2.Action.LoginAction">48 <!-- 引用拦截器49 name:拦截器名称或拦截器栈名称50 -->51 <interceptor-ref name="timer"></interceptor-ref>52 53 <!-- 节点配置54 name : result名称 和Action中返回的值相同 55 type : result类型 不写则选用superpackage的type struts-default.xml中的默认为dispatcher56 -->57 <result name="success" type="dispatcher">/talk.jsp</result>58 <!-- 参数设置 59 name:对应Action中的get/set方法 60 -->61 <param name="url">http://www.sina.com</param>62 </action>63 </package>64 <!-- 可以在包外面定义常亮 和struts.properties 写法一致-->65 <constant name="struts.i18n.reload" value="true"></constant>66 </struts>
3.struts.properties
这里就列举几个常用的属性
这就是三个文件的配置以及说明
其中第三个文件完全可以写到struts.xml中去
在package标签外面
<!-- 可以在包外面定义常亮 和struts.properties 写法一致--> <constant name="struts.i18n.reload" value="true"></constant></struts>
这样就可以省去 properties文件中的配置了
Struts入门(二) 配置文件的讲解
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。