现在,明白了jpetstore到底是干什么的了,就是一个简易的电子购物网站,这不过是买的是宠物,呵呵。
然后,开始都源代码了。
首先,当然是web.xml了。
首先是
<context-param> <param-name>webAppRootKey</param-name> <param-value>petstore.root</param-value> </context-param> <context-param> <param-name>log4jConfigLocation</param-name> <param-value>/WEB-INF/log4j.properties</param-value> </context-param>
这两个应用程序参数 webAppRootKey 和 log4jConfigLocation
通过Google知道, 设置了webAppRootKey的值为petstore.root后,就可以在诸如 log4j.properties这个文件中以${petsotre.root}的形式使用这个值,主要就是代表应用程序的绝对路径。
然后:
<context-param> <param-name>contextConfigLocation</param-name> <param-value>/WEB-INF/dataAccessContext-local.xml /WEB-INF/applicationContext.xml</param-value> <!-- <param-value>/WEB-INF/dataAccessContext-jta.xml /WEB-INF/applicationContext.xml</param-value> --> </context-param>
这个 contextConfigLocation主要是设置 psring 的要读取的xml配置文件
<listener> <listener-class> org.springframework.web.context.ContextLoaderListener </listener-class> </listener>
接着是配置应用程序的监听器,使用的具体监听器是spring的ContextLoaderListener。通过spring的API了解到,这个listener是为了引入ApplicationWebContext的配置的,一般是委托 ContextLoader 来完成的。而且这个监听器在web.xml中的注册必须是接在 log4jConfigListener 之后(如果log4jConfigListener存在)。
接着是配置一个servlet:
<servlet> <servlet-name>petstore</servlet-name> <servlet-class> org.springframework.web.servlet.DispatcherServlet </servlet-class> <load-on-startup>2</load-on-startup> </servlet>
这个servlet是 DispatcherServlet,通过google和spring的API得知:这是springMVC框架中的分发器。
然后是另一个servlet:
<servlet> <servlet-name>action</servlet-name> <servlet-class>org.apache.struts.action.ActionServlet</servlet-class> <load-on-startup>3</load-on-startup> </servlet>
这个就是我们熟悉的 Struts 中的 action了。
后面的 servlet 略,因为我不是很熟悉,也不是目前主要学习的目标
然后看 servlet mapping:
<servlet-mapping> <servlet-name>petstore</servlet-name> <!-- <servlet-name>action</servlet-name> --> <url-pattern>*.do</url-pattern> </servlet-mapping>
这就是使用spring MVC 还是使用 struts 的开关,这里把 struts注释了,所以选择了 spring MVC,我改一下,选择了struts好了。毕竟,struts熟悉一点,以后有时间再研究spring的MVC好了。
后面需要看的,就是:
<welcome-file-list> <welcome-file>index.html</welcome-file> </welcome-file-list>
也就是首页了,这个简单明了。好了,磕磕碰碰,总算是把 web.xml 读了个大概。