第一步:配置前端控制器
<filter>
<filter-name>myfilter</filter-name>
<filter-class>org.springframework.web.filter.CharacterEncodingFilter</filter-class>
<init-param>
<param-name>encoding</param-name>
<param-value>utf-8</param-value>
</init-param>
<init-param>
<param-name>forceEncoding</param-name>
<param-value>true</param-value>
</init-param>
</filter>
<filter-mapping>
<filter-name>myfilter</filter-name>
<url-pattern>/</url-pattern>
</filter-mapping>
<servlet>
<servlet-name>springmvc</servlet-name>
<servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class>
<init-param>
<param-name>contextConfigLocation</param-name>
<param-value>classpath:aplicationContext.xml</param-value>
</init-param>
</servlet>
<servlet-mapping>
<servlet-name>springmvc</servlet-name>
<url-pattern>.do</url-pattern>
</servlet-mapping>
第二步:配置处理器映射器
SimpleUrlHandlerMapping通过id找到Conrtoller
<bean class="org.springframework.web.servlet.handler.SimpleUrlHandlerMapping"></bean>
第三步:配置处理器适配器
HttpRequestHandlerAdapter执行Conrtoller
<bean class="org.springframework.web.servlet.mvc.HttpRequestHandlerAdapter"></bean>
第四步:配置视图解析器
保持不变
<bean class="org.springframework.web.servlet.view.InternalResourceViewResolver"></bean>
第五步:开发表现层的Action
Action需要实现HttpRequestHandler接口
public class SecondAction implements HttpRequestHandler {
@Override
public void handleRequest(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
request.setAttribute("secondInfo","这是第二个案例");
request.getRequestDispatcher("/second.jsp").forward(request,response);
}
}
第六步:配置整合
配置action:这里key是自定义的访问路径,节点值对应就是控制器的ID
首先配置SecondAction
<bean id="mySecondAction" class="com.zyh.action.SecondAction"></bean>
接下来将映射器与相应的Action对应起来。
<!--配置处理器映射器-->
<bean class="org.springframework.web.servlet.handler.SimpleUrlHandlerMapping">
<property name="mappings">
<props>
<prop key="/second.do">mySecondAction</prop>
</props>
</property>
</bean>
网友评论