所有来自游览器的内容先到达dispatchservlet 然后分发给不同的controller,通过配置web.xml实现
<servlet>
<servlet-name>springDispatcherServlet</servlet-name>
<servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class>
<load-on-startup>1</load-on-startup> //初始化时候自动加载
</servlet>
<servlet-mapping>
<servlet-name>springDispatcherServlet</servlet-name>
<url-pattern>*.test</url-pattern> //拦截所有.test的请求
</servlet-mapping>
加载DispatcherServlet的时候如果没有指定目录会自动加载WEB-INFO下面的【servlet-name】-servlet.xml文件。。。在本文中就是springDispatcherServlet-servlet.xml文件
<beans xmlns="http://www.springframework.org/schema/beans"
xmlns:context="http://www.springframework.org/schema/context"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="
http://www.springframework.org/schema/beans
http://www.springframework.org/schema/beans/spring-beans-3.0.xsd
http://www.springframework.org/schema/context
http://www.springframework.org/schema/context/spring-context-3.0.xsd">
<bean
class="org.springframework.web.servlet.handler.SimpleUrlHandlerMapping">
<property name="mappings">
<props>
<prop key="aa.test">helloWorldController</prop>
</props>
</property>
</bean>
<bean id="helloWorldController" class="control.HelloWorldController"></bean>
</beans>
public class HelloWorldController implements org.springframework.web.servlet.mvc.Controller{
@Override
public ModelAndView handleRequest(HttpServletRequest arg0,
HttpServletResponse arg1) throws Exception {
System.out.println("hhhhhhhhhhh");
return new ModelAndView("name"); //返回的视图也需要设置视图解析格式在springDispatcherServlet-servlet.xml中
}
}
<bean id="helloWorldController" class="control.HelloWorldController"></bean>
<bean class="org.springframework.web.servlet.view.UrlBasedViewResolver">
<property name="prefix" value="/WEB-INF/jsp/"/> //视图映射前缀 相当于拼接url路径
<property name="suffix" value=".jsp"/> //视图映射后缀
<property name="viewClass" value="org.springframework.web.servlet.view.JstlView"></property>//模型处理,视图解析器
</bean>
实际上拼接后路径为/WEB-INF/jsp/name.jsp