Spring MVC框架简单搭建
spring MVC是一种基于MVC的表现层开发,类似于struts2框架,C - Controller:控制器;接受用户请求,调用 Model 处理,然后选择合适的View给客户;M - Model:模型,就是 dao,bean.业务处理模型,接受Controller的调遣,处理业务,处理数据。V - View:视图。返回给客户看的结果。注意这里的客户未必是人,可能是浏览器,可能是APP。
在 IDEA 中新建 Spring MVC 项目
修改 web.xml
拦截所有的请求,交由spring MVC的后台控制器来处理
编辑 dispatcher-servlet.xml
文件名的开头 dispatcher 与上面 web.xml 中的 元素配置的 dispather 对应,这是 Spring MVC 的映射配置文件(xxx-servlet.xml)
<?xml
version="1.0" encoding="UTF-8"?>
<beans
xmlns="http://www.springframework.org/schema/beans"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://www.springframework.org/schema/beans
http://www.springframework.org/schema/beans/spring-beans.xsd">
<bean id="simpleUrlHandlerMapping"
class="org.springframework.web.servlet.handler.SimpleUrlHandlerMapping">
<property name="mappings">
<props>
<!-- /hello 路径的请求交给 id 为 helloController 的控制器处理-->
<prop key="/hello">helloController</prop>
</props>
</property>
</bean>
<bean id="helloController" class="controller.HelloController"></bean>
</beans>
编写 HelloController
在 Package【controller】下创建 【HelloController】类,并实现org.springframework.web.servlet.mvc.Controller 接口:
package controller;
import org.springframework.web.servlet.ModelAndView;
import org.springframework.web.servlet.mvc.Controller;
public class HelloController implements Controller{
@Override
public ModelAndView handleRequest(javax.servlet.http.HttpServletRequest httpServletRequest, javax.servlet.http.HttpServletResponse httpServletResponse) throws Exception {
return null;
}
}
***********************************************************************************
package controller;
import org.springframework.web.servlet.ModelAndView;
import org.springframework.web.servlet.mvc.Controller;
public class HelloController implements Controller {
public ModelAndView handleRequest(javax.servlet.http.HttpServletRequest httpServletRequest, javax.servlet.http.HttpServletResponse httpServletResponse) throws Exception {
ModelAndView mav = new ModelAndView("index.jsp");
mav.addObject("message", "Hello Spring MVC");
return mav;
}
}
}
准备 index.jsp
<%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8" isELIgnored="false"%>
<h1>${message}</h1>
部署 Tomcat 及相关环境
在【Run】菜单下找到【Edit Configuration】
选择好本地的 Tomcat 服务器,并改好名字
DispatcherServlet,,拦截所有的请求,并且将这些请求发送给 Spring MVC 控制器,处理器映射(HandlerMapping)根据请求所携带的 URL 信息来进行决策,控制器 将请求发送给选中的控制器,到了控制器,请求会卸下其负载(用户提交的请求)等待控制器处理完这些信息,返回 DispatcherServlet当控制器在完成逻辑处理后,通常会产生一些信息,这些信息就是需要返回给用户并在浏览器上显示的信息,它们被称为模型(Model),制器所做的最后一件事就是将模型数据打包,并且表示出用于渲染输出的视图名(逻辑视图名)。它接下来会将请求连同模型和视图名发送回
DispatcherServlet。