SpringMVC 的重要组件
1.DispatcherServlet(前端控制器)
2.HandlerMapping(映射控制器)
3.Controller(处理器)
4.ModelAndVile(模型和对象)
5.ViewResolver(视图解析器)
SpringMVC使用配置
在web.xml中配置DispatcherServlet
<listener>
<listener-class>org.springframework.web.context.ContextLoaderListener</listener-class>
</listener>
<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:springmvc.xml</param-value>
</init-param>
</servlet>
<servlet-mapping>
<servlet-name>springmvc</servlet-name>
<url-pattern>/</url-pattern>
</servlet-mapping>
SpringMVC的运行流程
- spring mvc先将请求发送给DispatcherServlet。
- DispatcherServlet查询一个或多个HandlerMapping,找到处理请求的Controller。
- DispatcherServlet再把请求提交到对应的Controller。
- Controller进行业务逻辑处理后,会返回一个ModelAndView。
- Dispatcher查询一个或多个ViewResolver视图解析器,找到ModAndView对象指定的视图对象。
- 视图对象负责渲染返回给客户端
SpringMVC常用注解
- @Respostory:用于标注Dao类
- @Service:用于标注Service层实现类
- @Controller:用于标注控制器类
- @RequestMapping:用来处理请求地址映射。标注在类上,表示为该类所有方法的父路径
- @Component:实现Bean组件的定义
- @Autowired:实现Bean的自动装配,默认按类型匹配
- @Qualifier:指定Bean名称
- @Resource:实现组件装配,默然按名称匹配
- @RequestParam:用于控制层获取参数(常用属性–defaultValue:设置默认值;required: 值为布尔类型,判断该参数是否必填;value)
- @ResponseBody:用于控制层接收对象