【史上最全的web.xml一句一译】Struts框架的xml配置文件(一)
2014-12-29 22:43
309 查看
我在使用Struts框架时,对xml配置文件具体如何关联各层文件十分困惑,然后将问题分解如下:
struts-config.xml的每一个标签的作用和关系?
web.xml如何控制struts-config.xml文件和每一个标签的作用和关系,尤其是对servlet的处理。
java web为什么需要配置xml文件,servlet等为什么需要配置xml文件。
properties与xml 之间的区别?
解决问题从下自上,首先是properties与xml 之间的区别。
功能上两者都是按照一定格式储存数据,一个按照 key=value型,一个是<key>value</key>。用于资源文件和配置文件,当然xml还可以传输数据。
区别的话,层次性和通用性上,xml更加优秀。其实就是潮流的问题,xml作为跨语言的数据传输的新语言,大家赶潮流嘛~
然后是第三个问题,servlet等为什么需要配置xml文件?为什么不能直接使用servlet文件。
//我们总是认为这是sun约定的。突然发现有些事情不寻根问底,或者我总认为开发应用的不需要知道底层怎么工作,这好像是一个坑,不去填它,越积越多,我们就会掉下去,而且潜意识里根本不会想到是它的原因。
回归正题,简单地说,就是帮助Tomcat找到所需要用的servlet。即tomcat需要根据配置文件决定载入路径和类,根据url-pattern决定对应哪个。
具体见下面的web.xml的备注,详尽极了!
struts-config.xml的每一个标签的作用和关系?
web.xml如何控制struts-config.xml文件和每一个标签的作用和关系,尤其是对servlet的处理。
java web为什么需要配置xml文件,servlet等为什么需要配置xml文件。
properties与xml 之间的区别?
解决问题从下自上,首先是properties与xml 之间的区别。
功能上两者都是按照一定格式储存数据,一个按照 key=value型,一个是<key>value</key>。用于资源文件和配置文件,当然xml还可以传输数据。
区别的话,层次性和通用性上,xml更加优秀。其实就是潮流的问题,xml作为跨语言的数据传输的新语言,大家赶潮流嘛~
然后是第三个问题,servlet等为什么需要配置xml文件?为什么不能直接使用servlet文件。
//我们总是认为这是sun约定的。突然发现有些事情不寻根问底,或者我总认为开发应用的不需要知道底层怎么工作,这好像是一个坑,不去填它,越积越多,我们就会掉下去,而且潜意识里根本不会想到是它的原因。
回归正题,简单地说,就是帮助Tomcat找到所需要用的servlet。即tomcat需要根据配置文件决定载入路径和类,根据url-pattern决定对应哪个。
具体见下面的web.xml的备注,详尽极了!
<?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE web-app PUBLIC "-//Sun Microsystems, Inc.//DTD Web Application 2.3//EN" "http://java.sun.com/dtd/web-app_2_3.dtd"> <web-app> <!--设置该project的名称和描述,可在tomcat管理器中看到--> <display-name>smartstruts</display-name> <!-- servlet-name要一致,就是一条线。 --> <servlet> <!--url上显示的名字,也就是告诉服务器的名字,自己取得!--> <servlet-name>action</servlet-name> <!-- 在加入struts的jar包时,相应同时添加。 --> <!-- 告诉服务器需要载入的类,也就是servlet的位置,这里是由于导入struts的框架 --> <servlet-class>org.apache.struts.action.ActionServlet</servlet-class> <!--给servlet附加参数,用在动态配置(是指struts-config.xml对struts工程的控制,是可变的)中--> <init-param> <param-name>config</param-name> <param-value>/WEB-INF/struts-config.xml</param-value> </init-param> <load-on-startup>0</load-on-startup> </servlet> <!-- Standard Action Servlet Mapping --> <!-- 它用来指定ActionServlet可以处理哪些URL --> <servlet-mapping> <servlet-name>action</servlet-name> <!-- “*.do”像是路引,对应着form的属性action=“*.do” --> <!-- 所以说服务器先找到servlet-mapping,然后再找到servlet。而不是根据前后上下顺序。 --> <url-pattern>*.do</url-pattern> </servlet-mapping> <!-- 小结一下服务器的工作原理:服务器会根据"*.do"查找servlet-mapping中的url-pattern来对应 servlet-name为(action) 再根据action 名查找xml中的servlet节下的servlet-class --> <!-- The Usual Welcome File List --> <welcome-file-list> <welcome-file>index.jsp</welcome-file> </welcome-file-list> </web-app>今天好累,先写第一部分,明天写第二部分。
相关文章推荐
- 史上最全web.xml配置文件元素详解(转载防丢)
- 史上最全web.xml配置文件元素详解
- 最全web.xml配置文件元素详解
- 史上最全web.xml配置文件元素详解
- 史上最全web.xml配置文件元素详解
- 最全web.xml配置文件元素详解
- 史上最全web.xml配置文件元素详解
- 史上最全web.xml配置文件元素详解 [转载]
- 史上最全web.xml配置文件元素详解
- 史上最全web.xml配置文件元素详解
- 史上最全web.xml配置文件元素详解
- 史上最全web.xml配置文件元素详解
- java 的 web 服务器 jswdk 的配置文件 webserver.xml
- web.xml配置文件祥解
- web.xml、.properties资源文件的配置
- 为Struts应用配置web.xml文件
- web.xml配置文件祥解
- 关于web.xml文件的配置
- Tomcat 配置文件web.xml
- spring + ibatis 配置文件浅析 之 web.xml