springMVC-1
1、springMVC请求由前端到后端的流程
2、配置过程
(1)需要的jar包
spring-aop.jar
spring-beans.jar
spring-context.jar
spring-core.jar
spring-expression.jar
spring-web.jar
spring-webmvc.jar
commons-logging-1.1.3.jar
(2)在web.xml里面配置DispatcherServlet,用于拦截前端发送的请求。
DispatcherServlet是前端控制器,配置在web.xml中,拦截匹配的请求,匹配规则自己定义。把拦截到的请求
根据相应的规则分发到目标Controller里对应的RequestMapping来处理,是配置SpringMVC的第一步。
<servlet> <servlet-name>dispatcherServlet</servlet-name> <servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class> <!--配置DispatcherServlet初始化参数,配置springMVC配置文件的位置和名称--> <init-param> <param-name>contextConfigLocation</param-name> <!-- <param-value>classpath:springmvc.xml</param-value> --> <param-value>/WEB-INF/springmvc.xml</param-value> </init-param> <!--servlet在web容器加载时创建,而非在第一次访问时才创建,servelt默认不加载,只有在第一次访问时才加载--> <load-on-startup>1</load-on-startup> </servlet> <servlet-mapping> <servlet-name>dispatcherServlet</servlet-name> <!--对所有后缀是.json的请求进行拦截,匹配--> <url-pattern>*.json</url-pattern> </servlet-mapping>
(3)创建第一步中的springmvc.xml配置文件
<!--配置自动扫描的包--> <context:component-scan base-package="com.springmvc"/> <!--配置视图解析器,把handler的返回值,转换为实际的物理视图, 即RequestMapping对应的方法,有一个返回值,要根据对应的返回值,跳转到不同的页面 --> <bean class="org.springframework.web.servlet.view.InternalResourceViewResolver"> <!-- 要跳转页面的前缀,即页面所在的路径 --> <property name="prefix" value="/view/" /> <!-- 要跳转页面的后缀名--> <property name="suffix" value=".html" /> </bean>
(4)创建handler类TestHandler
@Controller public class TestHandler { /** * 0、前端控制器DispatcherServlet收到请求,发给和url相匹配的RequestMapping * * 1、使用@RequestMapping映射前端请求的url * * 2、返回时会通过视图解析器,解析为实际的物理视图 * 对于视图解析器InternalResourceViewResolver会做如下解析 * 通过 prefix + returnVal + suffix 得到实际的物理视图,然后做请求转发 * */ @RequestMapping(value={"/helloworld.json"},method={RequestMethod.GET}) public String sayHello(){ return "success"; } }
(5)index.html
<a href="helloworld.json">helloworld</a>
(6)一个简单的springMVC控制器就配置完成了,要注意文章开始的第一章图。