SpringMVC也许是目前最流行的web层框架了,尤其是越来越强调的效率的互联网行业。通过这一系列课程的学习,一定要掌握SpringMVC的工作原理,在此基础玩转SpringMVC。本课程采用的开发环境:
![](https://i-blog.csdnimg.cn/blog_migrate/426c8e8c657142ee40fd7749f8b93dfd.jpeg)
学习目标:
1.了解SpringMVC产生及发展 ;
2.理解springMVC的工作原理 ;
3.掌握SpringMVC的配置方法 。
学习建议:
SpringMVC框架是所有java系程序员必须掌握的知识,SpringMVC框架不但可以玩转BS项目,也可以hold住移动端的后台接口开发。如果你对java感兴趣,或者想从事java的开发工作,那么springMVC是必修课。
![](https://i-blog.csdnimg.cn/blog_migrate/9250f5c6cb36dfc8798ec3c3f32b722a.jpeg)
![](https://i-blog.csdnimg.cn/blog_migrate/20839a2ff2777ae31b01ae3cbc254204.jpeg)
框架
- 降低开发复杂度
- 提高效率
- 减少重复劳动
About Spring MVC
Spring MVC 框架是一个轻量级 Web 层框架,实现 Model-View-Controller 模式,将数据、业务与展现进行分离。
Spring MVC 的设计是围绕 DispatcherServlet 展开的, DispatcherServlet 通过可配置的 handlerMappings、view resolution、locale 以及 theme resolution 来处理请求并且转到对应试图。
- DispatcherServlet 可理解为前端控制器
Spring MVC 的工作流程
![](https://i-blog.csdnimg.cn/blog_migrate/c454f8e77a0299e7e8e97531643b70d0.jpeg)
About Spring MVC
Spring MVC 框架是一个轻量级 Web 层框架,实现 Model-View-Controller 模式,将数据、业务与展现进行分离。
Spring MVC 的设计是围绕 DispatcherServlet 展开的, DispatcherServlet 通过可配置的 handlerMappings、view resolution、locale 以及 theme resolution 来处理请求并且转到对应试图。
- DispatcherServlet 可理解为前端控制器
Spring MVC 的工作流程
![](https://i-blog.csdnimg.cn/blog_migrate/6f6fbc5523c02c0f1bff1be2de4fbb79.jpeg)
![](https://i-blog.csdnimg.cn/blog_migrate/6f0130a12f71398ebd1dcce97e9dc91a.jpeg)
<beans xmlns="http://www.springframework.org/schema/beans"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns:p="http://www.springframework.org/schema/p"
xmlns:mvc="http://www.springframework.org/schema/mvc"
xmlns:context="http://www.springframework.org/schema/context"
xmlns:tx="http://www.springframework.org/schema/tx"
xmlns:aop="http://www.springframework.org/schema/aop"
xsi:schemaLocation="http://www.springframework.org/schema/beans
http://www.springframework.org/schema/beans/spring-beans-3.1.xsd
http://www.springframework.org/schema/tx
http://www.springframework.org/schema/tx/spring-tx-3.1.xsd
http://www.springframework.org/schema/context
http://www.springframework.org/schema/context/spring-context-3.1.xsd
http://www.springframework.org/schema/aop
http://www.springframework.org/schema/aop/spring-aop-3.1.xsd
http://www.springframework.org/schema/mvc
http://www.springframework.org/schema/mvc/spring-mvc-3.1.xsd
">
<!-- 提供一个映射处理器 -->
<bean id="handlerMapping" class="org.springframework.web.servlet.handler.BeanNameUrlHandlerMapping"/>
<!-- 提供自定义控制器 -->
<bean name="/helloWorld.do" class="cn.kgc.controllers.HelloWorldController"/>
<!-- 提供视图解析器 -->
<bean id="viewResolver" class="org.springframework.web.servlet.view.InternalResourceViewResolver"/>
<!-- 前缀 -->
<property name="prefix" value="/WEB-INF/jsps/"/>
<!-- 后缀 -->
<property name="suffix" value=".jsp"/>
</beans>
处理方法
public class HelloWorldController implements Controller{
/**
* 处理请求
*/
@Override
public ModelAndView handleRequest(HttpServletRequest request,
HttpServletResponse response) throws Exception {
//提供一个返回的对象(ModelAndView)
ModelAndView mav =new ModelAndView();
//添加页面要显示的数据
mav.addObject("msg","hello world!!");
//指定逻辑视图名
mav.setViewName("hello");
return mav;
}
}
JSP页面
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>Hello World</title>
</head>
<body>
${msg }
</body>
</html>