springMVC学习(⼀)---前端控制器
1.spring MVC中的前段控制器就是DsipatcherServlet,它在spring MVC框架中的结构图如下:
2.DispatcherServlet其实就是⼀个Servlet,它继承了HttpServlet这个抽象类。
先来看下该类在的位置:
为了使⽤它,你需要在你的web应⽤程序中的l中配置⼀下,配置如下:
<servlet>
<servlet-name>dispatcher</servlet-name>
<servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class>
<init-param>
<param-name>contextConfigLocation</param-name>
<param-value></param-value>
</init-param>
<load-on-startup>1</load-on-startup>
</servlet>
<servlet-mapping>
<servlet-name>dispatcher</servlet-name>
<url-pattern>/example/*</url-pattern>
</servlet-mapping>
这样配置后,在你应⽤程序中所有请求中带/example的都会被DispatcherServlet拦截到。
对于3.0++的容器,还有另外⼀种配置⽅式,那就是⽤代码⽅式代替:
public class MyWebApplicationInitialzer implements WebApplicationInitializer {
public void onStartup(ServletContext servletContext) throws ServletException {
/
/ TODO Auto-generated method stub
ServletRegistration.Dynamic regist =
servletContext.addServlet("dispatcher", new DispatcherServlet());
regist.setLoadOnStartup(1);
regist.addMapping("/example/*");
}
}
设置容器加载时就启动,设置映射的路径。
3.每⼀个DispatcherServlet都有⾃⼰的上下⽂环境(WebApplicationContext),它继承了些上下⽂环境中的bean,⽽且可以根据条件⾃⼰重写。
下⾯就是⼀个继承图解:
4.在l中配置好DispatcherServlet后,容器启动时回去WEB-INF⽂件夹下去(默认[servlet-name]-
5.在实际的应⽤中我们⼀般不使⽤这种默认的配置,你只需要在l中配置下⾯的⽂件就可,下⾯给⼀个例⼦,把param-value换成你⾃定义就可:
springmvc考试选择题<context-param>
<param-name>contextConfigLocation</param-name>
<param-value>/l</param-value>
</context-param>
<listener>
<listener-class>org.t.ContextLoaderListener</listener-class>
</listener>
<servlet>
<servlet-name>dispatcher</servlet-name>
<servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class>
<init-param>
<param-name>contextConfigLocation</param-name>
<param-value></param-value>
</init-param>
<load-on-startup>1</load-on-startup>
</servlet>
<servlet-mapping>
<servlet-name>dispatcher</servlet-name>
<url-pattern>/*</url-pattern>
</servlet-mapping>
6.好了,⼀个通⽤简单spring MVC基本配置就完成了。
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论