前端控制器配置
在web.xml中配置
<1>配置servlet
<servlet> <servlet-name>dispatcher</servlet-name> <servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class> <!-- contextConfigLocation配置springMVC加载的配置文件,配置处理器映射器适配器等 --> <!-- 如果不配置init-param,默认加载/WEB-INF/servlet名称-servlet.xml --> <init-param> <param-name>contextConfigLocation</param-name> <param-value>classpath:springmvc.xml</param-value> </init-param> <!-- 表示随WEB服务器启动 --> <load-on-startup>1</load-on-startup> </servlet>servlet的全限定名(class类名)在图中路径找
<2>配置servlet-mapping
<servlet-mapping> <servlet-name>dispatcher</servlet-name> <!-- url的配置方式有三种 第一种:设置为*.do、*.action,拦截固定后缀的url。 例如:/user/add.action 此方法最简单,不会导致静态资源(jpg,js,css)被拦截. 第二种:设置为/,拦截所有url。例如:/user/add /user/add.action。 此方法可以实现RESTful风格的url,但是此方法会导致静态文件(jpg,js,css)被拦截后不能正常显示,需要特殊处理。 第三种:设置为/*,拦截所有url。此设置方法错误, 因为请求到Action,当action转到jsp时再次被拦截,提示不能根据jsp路径mapping成功。 使用这种配置,最终转发到一个jsp页面时,仍然会由dispatcherServlet解析jsp,不能根据jsp页面找到handler。 --> <url-pattern>/</url-pattern> </servlet-mapping>