深刻淺出SpringMVC系列~

寫在前面:

小夥伴兒們,你們好!此次讓咱們一塊兒來入門學習SpringMVC〜html

思惟導圖:

1,環境配置;

咱們建一個Maven項目,把咱們所須要的依賴約會進去;大概是下面這樣;前端

<dependencies>
 <dependency>  <groupId>org.springframework</groupId>  <artifactId>spring-context</artifactId> <version>${spring.version}</version>  </dependency>  <dependency>  <groupId>org.springframework</groupId>  <artifactId>spring-web</artifactId>  <version>${spring.version}</version>  </dependency>  <dependency>  <groupId>org.springframework</groupId>  <artifactId>spring-webmvc</artifactId>  <version>${spring.version}</version>  </dependency>  <dependency>  <groupId>javax.servlet</groupId>  <artifactId>servlet-api</artifactId>  <version>2.5</version>  <scope>provided</scope>  </dependency>  <dependency>  <groupId>javax.servlet.jsp</groupId>  <artifactId>jsp-api</artifactId>  <version>2.0</version>  <scope>provided</scope>  </dependency>  </dependencies> 複製代碼

首先咱們看一下項目架構吧!java

咱們新建一個controller類,Spring的配置文件等程序員

咱們先在web.xml文件裏面把前端控制器,其實就是把一個Servlet配置好:web

<servlet>
 <servlet-name>dispatcherServlet</servlet-name>  <servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class>  <!-- 配置Servlet的初始化參數,讀取springmvc的配置文件,建立spring容器 -->  <init-param>  <param-name>contextConfigLocation</param-name>  <param-value>classpath:springmvc.xml</param-value>  </init-param>  <!--配置啓動加載-->  <load-on-startup>1</load-on-startup>  </servlet>   <servlet-mapping>  <servlet-name>dispatcherServlet</servlet-name>  <url-pattern>/</url-pattern>  </servlet-mapping> 複製代碼

這裏主要就是運用DispatcherServlet這個類了,還有就是啓動服務器時須要加載spring的配置文件;spring

還有就是Spring.xml文件了:api

<beans xmlns="http://www.springframework.org/schema/beans"
 xmlns:mvc="http://www.springframework.org/schema/mvc"  xmlns:context="http://www.springframework.org/schema/context"  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 http://www.springframework.org/schema/mvc http://www.springframework.org/schema/mvc/spring-mvc.xsd http://www.springframework.org/schema/context http://www.springframework.org/schema/context/spring-context.xsd">   <!-- 配置spring建立容器時要掃描的包 -->  <context:component-scan base-package="com.java"/>   <!-- 配置視圖解析器 -->  <bean id="viewResolver"  class="org.springframework.web.servlet.view.InternalResourceViewResolver">  <property name="prefix" value="/WEB-INF/jsp/"></property>  <property name="suffix" value=".jsp"></property>  </bean>  <!-- 配置spring開啓註解mvc的支持<mvc:annotation-driven></mvc:annotation-driven>--> </beans> 複製代碼

2,程序文件;

首先,看起始頁index.jsp;spring-mvc

<html>
<head>  <title>title</title> </head> <body> <a href="helloWorld">SpringMVC</a> </body> </html>  複製代碼

這裏主要給後面的控制類控件id,而後在Spring配置文件中讓其註解掃描相應的包;服務器

寫一個控制類控制器:架構

@Controller
public class HelloWorld {   //自動請求到SayWorld方法  @RequestMapping(path="/helloWorld")  public String SayHello(){  System.out.println("SpringMVC你好呀~");  return "success";  } } 複製代碼

配置視圖解析器,實際上就是在上面的Spring配置文件裏面,咱們能夠肯定正確的返回路徑;在方法上方添加請求路徑路徑,當運行成功後,直接重定向到sccess頁;如何轉換呢?

那來看看逐步成功以後的頁面成功;

<%@ page contentType="text/html;charset=UTF-8" language="java" %>
<html> <head>  <title>SpringMVC成功!</title> </head> <body> <h3>SpringMVC成功啦</h3> </body> </html> 複製代碼

以後,咱們運行Tomcat就能夠成功了!以上就是簡單的SpringMVC入門級demo以及大體流程;

3,流程剖析;

熟悉了入門程序以後,接下來看看SpringMVC的設計的一些組件;

DispatcherServlet:前端控制器

用戶請求到達前端控制器,它就至關於mvc模式中的c,dispatcherServlet是整個流程控制的中心,由它調用其餘組件處理用戶的請求,dispatcherServlet的存在下降了組件之間的交換性。

HandlerMapping:處理器映射器

HandlerMapping負責根據用戶請求找到Handler即處理器,SpringMVC提供了不一樣的映射器實現不一樣的映射方式,例如:配置文件方式,實現接口方式,註解方式等

處理程序:處理器

它就是咱們開發中要編寫的特定業務控制器。由DispatcherServlet把用戶請求轉發到Handler。由Handler對具體的用戶請求進行處理。

查看解析器:查看解析器

View Resolver負責將處理結果生成ViewView,View Resolver首先根據邏輯視圖名解析成物理視圖名即具體的頁面地址,再生成View視圖對象,最後對視圖進行渲染將處理結果經過頁面展現給用戶。

查看:視圖

SpringMVC框架提供了不少的視圖預覽類型的支持,包括:jstlView,freemarkerView,pdfView等。咱們最經常使用的視圖就是jsp。由程序員根據業務需求開發具體的頁面。

mvc:註釋驅動的說明

使用mvc:由註釋驅動的自動加載RequestMappingHandlerMapping(處理映射器)和RequestMappingHandlerAdapter(處理適配器),可用在SpringMVC.xml配置文件中使用mvc:註釋驅動的替代註解處理器和適配器的配置。

好了,今天就先分享到這裏了,下期繼續給你們帶來SpringMVC相關注解方面的學習!更多幹貨,優質文章,歡迎關注個人原創技術公衆號〜

本文使用 mdnice 排版

相關文章
相關標籤/搜索