Spring MVC学习笔记 1:入门篇
2014-03-05 11:12
204 查看
springMVC基于模型-视图-控制器模式,可以帮助你建立一个像spring框架本身一样,灵巧和松耦合的web应用程序。
1,请求的生命周期:
用户在web界面中提交一个表单web请求就产生了,web请求犹如一个快递员,他携带着发件方和收件方的消息,web请求从离开浏览器到得到响应,中间经历几次停留,每一次停留都卸下一些消息并得到更多的消息。
web请求离开浏览器后的第一个节点是dispatchServlet(普通的前端servlet),dispatchServlet根据映射找到具体的控制器,跳转到控制器后,请求卸下消息,等待处理结果,并准备反馈响应消息,这些消息被称为模型(model),不过仅向用户反馈未加工的数据是不够的,一般需要反馈用户可接收的视图(一般是jsp),因此控制器要做的最后一件事情就是将模型数据和视图名称封装到modeAndView中发送给dispatchServlet。
最后servlet收到响应消息,知道了要反馈的模型和视图,然后根据模型和视图渲染一个web界面,通过响应对象反馈给web浏览器。
2,如何使用:
首先需要导入相关依赖包:
在web_info下新建 servlet_name.xml
在web.xml中配置新建的 servlet_name.xml
编写控制器:
编写界面,略
1,请求的生命周期:
用户在web界面中提交一个表单web请求就产生了,web请求犹如一个快递员,他携带着发件方和收件方的消息,web请求从离开浏览器到得到响应,中间经历几次停留,每一次停留都卸下一些消息并得到更多的消息。
web请求离开浏览器后的第一个节点是dispatchServlet(普通的前端servlet),dispatchServlet根据映射找到具体的控制器,跳转到控制器后,请求卸下消息,等待处理结果,并准备反馈响应消息,这些消息被称为模型(model),不过仅向用户反馈未加工的数据是不够的,一般需要反馈用户可接收的视图(一般是jsp),因此控制器要做的最后一件事情就是将模型数据和视图名称封装到modeAndView中发送给dispatchServlet。
最后servlet收到响应消息,知道了要反馈的模型和视图,然后根据模型和视图渲染一个web界面,通过响应对象反馈给web浏览器。
2,如何使用:
首先需要导入相关依赖包:
在web_info下新建 servlet_name.xml
<?xml version="1.0" encoding="UTF-8" ?> <!DOCTYPE beans PUBLIC "-//SPRING//DTD BEAN//EN" "http://www.springframework.org/dtd/spring-beans.dtd"> <beans> <!-- 配置控制器映射,分发请求给指定的控制器处理 --> <bean id="simpleUrlHandlerMapping" class="org.springframework.web.servlet.handler.SimpleUrlHandlerMapping"> <property name="mappings"> <props> <prop key="/hello.do">helloController</prop> <!--<prop key="/Login.do">loginController</prop>--> </props> </property> </bean> <!-- 视图映射器,通过视图名次映射某某目录下的的JSP,例如映射名称为hello,那么则返回hello.jsp --> <bean id="viewResolver" class="org.springframework.web.servlet.view.InternalResourceViewResolver"> <property name="prefix" value="/WEB-APP/test/" /> <property name="suffix" value=".jsp" /> <property name="order" value="0"/><!-- 映射器优先级 --> </bean> <!-- 定义控制器 --> <bean id="helloController" class="com.autophone.webapp.contraller.contraller.HelloController"> </bean> </beans>
在web.xml中配置新建的 servlet_name.xml
<servlet> <servlet-name>s_name</servlet-name> <servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class> <load-on-startup>1</load-on-startup> </servlet> <servlet-mapping> <servlet-name>s_name</servlet-name> <url-pattern>*.do</url-pattern> </servlet-mapping> <!--注:当DispatcherServlet载入后,它会根据serveltName找serveltName-servlet.xml,然后载入其中的bean到spring的上下文 -->
编写控制器:
public class HelloController implements Controller { public ModelAndView handleRequest(HttpServletRequest request, HttpServletResponse response) throws Exception { Map map=request.getParameterMap(); //反馈消息给界面 //request.setAttribute("hello_2", "Hello World!"); response.setContentType("text/html;charset=utf-8"); String account = request.getParameter("username"); request.setAttribute("result", "success!"); //跳转到视图控制器定义的目录下的,hello.jsp界面 return new ModelAndView("hello"); //json形式返回 //String json="[{result:'success'}]"; //PrintWriter pw = response.getWriter(); // pw.print(json.toString()); // pw.close(); //return null; } }
编写界面,略
相关文章推荐
- Spring MVC的一些学习笔记-入门配置和HttpMessageConverter
- Spring学习笔记之Spring MVC 入门教程
- 【JAVA WEB】学习笔记——Servlet入门
- VS2013学习笔记之MFC串口调试助手入门
- 《Head First 设计模式》学习笔记一:设计模式入门
- 入门Demo---SpringMVC学习笔记(二)
- Maven实战学习笔记 3.Maven使用入门
- C++ Primer 学习笔记:泛型算法入门 fill && back_inserter && copy && replace
- 大数据与Hadoop简单入门[学习笔记]
- Spring MVC学习笔记01
- java入门程序100例学习笔记(008黑色星期五)
- jQuery入门学习笔记--初学2
- 入门指南--grunt学习笔记(1)
- Python Web开发:Django入门学习笔记(2)
- MyBatis学习笔记(二)快速入门
- Spark2.x学习笔记:13、Spark SQL快速入门
- Spring mvc笔记和学习
- MATLAB入门学习笔记(三) 多项式函数
- Docker学习笔记-Docker入门
- [cocos2d-x学习笔记][入门基础]Cocos2d-x网络编程01.在Mac平台部署Apache和PHP