kooyee ‘s blog

开源软件, 众人努力的结晶, 全人类的共同财富
posts - 103, comments - 55, trackbacks - 0, articles - 66
   :: 首页 :: 新随笔 :: 联系 :: 聚合  :: 管理
DispatcherServlet 配置
  整个过程开始于客户发出的一个请求,第一个接受这个请求的组件是Spring的DispatcherServlet。Spring  MVC将所有请求都经过一个前端Servlet控制器。DispatcherServlet就是这个前端控制器。
DispatcherServlet 同其他的Servlet一样要在web.xml中进行配置。
<servlet>
    <servlet-name>test</servlet-name>
    <servlet-class>org.springframework.web.servlet.DispatcherServlet
    </servlet-class>
    <load-on-startup>1</load-on-startup>
</servelt>
   当DispatcherServlet装载后,它将从xml文件中载入spring的应用上下文,这个xml文件的名字取决于servlet 的名字。在本例中因为servlet叫test,所以DispatcherServlet将试图从一个叫做test-servlet.xml的文件中载入应用上下文。
   接下来,你必须指定哪些URL需要由DispatcherServlet来处理。在web.xml中添加:
<servlet-mapping>
    <servlet-name></servlet-name>
    <url-pattern>*.do/*htm/...</url-pattern>
</servlet-mapping>
URL 是任意的。

  分解应用上下文
 
DispatcherServlet 可以从以<servlet-name>命名的xml文件中载入应用上下文。但建议将应用上下文分散到应用系统的各个层中。
  web 层              test-servlet.xml(用于控制的bean,Spring MVC组件)
  业务层               test-service.xml
  持久层               test-data.xml
由于 DispatcherServlet默认从test-servlet.xml(例子中)中载入应用上下文,为了保证所有配置文件都会被载入,你需要在web.xml中配置一个上下文载入器。有两种上下文载入器:ContextLoaderListener和ContextLoaderServlet。
可以在web.xml中这样配置ContextLoaderListener:
<listener>
    <listener-class>org.springframework.web.context.ContextLoaderLisetener
    </listener-class>
</listener>
老版本只能用ContextLoaderServlet但它不能再Servlet之前初始化监听器.需要如下配置:
<servlet>
    <servlet-name>context<servelt-name>
    <servlet-class>org.springframework.web.context.ContextLoaderServlet
    </servet-class>
    <load-on-startup>1</load-on-startup>
</servlet>
你还需指定配置文件的位置,如没有指定上下文载入器将在/WEB-INF/application-Context.xml处寻找Spring配置文件.
<context-param>
    <param-name>contextConfigLocation</param-name>
 
<param-value>/WEB-INF/ntx.xml, ..., ...</param-value>
</context-param>

DispatcherServlet 配置好了,但是web层没有建好,那是下面的工作.

评论

# 初学者  回复  更多评论   

2009-07-01 11:02 by Tank
(*^__^*) 嘻嘻……谢谢分享。。。。

只有注册用户登录后才能发表评论。


网站导航: