springMVC五大组件:
<1>DispatcherServlet ----------<控制器 请求入口>
<2>HandlerMapping ----------<控制器 请求派发>
<3>Controller ----------<控制器 处理请求控制流程>
<4>ModleAndView ----------<封装了数据和视图信息>
<5>ViewResolver ----------<处理视图信息的类>
流程理解:
<1>开启web容器(如:Tomcat)
<2>在浏览器输入相应的 *.do(本文中为index)
<3>根据请求在web.xml文件中寻找*.do的反向路径
*.do----->SpringMVC----->SpringMVC对应的class运行相应的service方法----->classpath:springmvcServlet.xml----->mappings(映射器)----->Controller(控制器)----->View视图处理器
如图:
包层次图:
<1>web.xml配置文件
使用Spring MVC,配置DispatcherServlet是第一步。
此处有个需要注意的点:
<init-param>如果不配置,那么将在WEB-INF下寻找默认的<servlet-name>-servlet.xml名称文件,
如果配置了,那么此处出classpath路径代表的是相对src下的路径。(就如上面层次图一样)
<!-- springmvc创建web.xml 首先配置DispatcherServlet 这就是个servlet-默认去找web-inf下的applicationContext.xml配置文件的内容 -->
<servlet>
<servlet-name>springmvc</servlet-name>
<servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class>
<!-- 如果不写init-param 就使用默认的名称:<servlet-name>-servlet 即springmvcServlet-->
<!-- 此处写上方便理解-->
<init-param>
<param-name>contextConfigLocation</param-name>
<param-value>classpath:springmvcServlet.xml</param-value>
</init-param>
<load-on-startup>1</load-on-startup>
</servlet>
<servlet-mapping>
<servlet-name>springmvc</servlet-name>
<url-pattern>/</url-pattern>
</servlet-mapping>
<2>springmvcServlet.xml配置文件
<!-- View配置 -->
<bean id="viewResolver"
class="org.springframework.web.servlet.view.InternalResourceViewResolver">
<property name="prefix" value="/WEB-INF/" />
<property name="suffix" value=".jsp" />
</bean>
<!-- HandlerMapping请求派发处理器配置 -->
<bean id="simpleUrlHandlerMapping"
class="org.springframework.web.servlet.handler.SimpleUrlHandlerMapping">
<property name="mappings">
<props>
<prop key="/index">indexController</prop>
</props>
</property>
</bean>
<!-- controller配置.>
<bean id="indexController" class="controller.IndexController"></bean>
<3>Controller控制器
public class IndexController implements Controller {
public ModelAndView handleRequest(HttpServletRequest request, HttpServletResponse
response) throws Exception {
ModelAndView mav = new ModelAndView("index");
mav.addObject("message", "Hello Spring MVC");
return mav;
}
}
<4>jsp文件
<%@ page language="java" contentType="text/html; charset=ISO-8859-1"
pageEncoding="ISO-8859-1"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
<title>hello index.jsp</title>
</head>
<body>
<h3>${message}</h3>
</body>
</html>
运行效果:
ok。这就是一个简单的springmvc实例+简单的理解,希望能帮到你~