天天看點

第一章 Spring MVC環境搭建

本章目标

  • 使用Spring MVC搭建Web項目
  • 注解方式
  • 接口方式

Spring MVC概述

  • Spring MVC為展現層提供的基于MVC設計理念的優秀Web架構,是目前最主流的MVC架構之一。
  • Spring3.0後全面超越了Struts2,稱為最優秀的MVC架構。
  • Spring MVC通過一套MVC注解,讓POJO稱為處理請求的控制器,無需實作任何接口。
  • 支援REST風格的Web請求。采用了松散耦合可插拔元件結構,比其它MVC架構更具擴充性和靈活性。

搭建Spring MVC環境

  • 基于接口方式搭建MVC環境:通過實作Controllor接口實作MVC
  • 基于注解方式搭建MVC環境 :在Spring 3.0以後的版本中,使用注解方式極大的簡化了傳統MVC配置的,靈活性和可維護性也得到大大的提高。

    推薦使用注解方式。

HelloWolrd

  • 步驟:
  • 1、導入jar包
  • 2、在web.xml中配置DispacherServlet
  • 3、加入Spring MVC配置檔案。
  • 4、編寫請求處理器,并标示為處理器
  • 5、添加視圖,并添加視圖解析器

導入jar包

Spring MVC需要的最核心的jar包

  • commons-logging.jar
  • spring-aop.jar
  • spring-beans.jar
  • spring-context.jar
  • spring-core.jar
  • spring-expression.jar
  • spring-web.jar
  • spring-webmvc.jar

修改配置檔案

  • 在web.xml中配置DispacherServlet,DispacherServlet預設加載/WEB-INF/<servlet-name>-servlet.xml下的Spring配置檔案,可以通過contextConfigLocation更改配置檔案路徑。
<servlet>
    <servlet-name>dispatcherServlet</servlet-name>
    <servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class>
    <init-param>
           <!-- SpringMVC配置檔案路徑 -->
        <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>
           

建立請求處理類

  • 添加一個HelloWorld類,使用注解修飾類和方法。
@Controller // 修飾類為一個控制器
  public class HelloWorld { 
    @RequestMapping("/hello") // 修飾方法(或類)的請求路徑
    public String hello(){
        System.out.println("hello spring mvc");
        return "hello";
    }
  }
           

Spring MVC配置檔案

  • 配置Spring MVC自動掃描包的路徑
<!-- 配置Spring MVC自動掃描的路徑 -->
  <context:component-scan base-package="com.znsd.controller" />
           
  • 配置視圖解析器,解析方式為
<!-- 配置視圖解析器 将視圖傳回字元串解析到:/WEB-INF/view/傳回值.jsp 下-->
  <bean class="org.springframework.web.servlet.view.InternalResourceViewResolver">
    <!-- 視圖字首 -->
    <property name="prefix" value="/WEB-INF/view/" />
    <!-- 視圖後置 -->
    <property name="suffix" value=".jsp" />
  </bean>
           

添加視圖

  • 在WEB-INF下添加view檔案夾用來存放jsp頁面。
第一章 Spring MVC環境搭建

運作結果

  • 輸入位址顯示頁面
第一章 Spring MVC環境搭建

接口方式實作MVC

  • 添加控制器類實作Controllor接口,傳回一個ModelAndView對象。
public class HelloWorld implements Controller{
    @Override
    public ModelAndView handleRequest(HttpServletRequest req, HttpServletResponse res) throws Exception {
        System.out.println("HelloWorld");
        return new ModelAndView("hello");
    }
  }
           
  • Spring 配置檔案中添加通路路徑,和映射。
<!-- name:代表通路路徑 class:指定控制器類 -->
  <bean name="/helloworld" class="com.znsd.controller.HelloWorld" />
           

總結

  • 注解方式實作MVC
  • 接口方式實作MVC

繼續閱讀