隨筆-126  評(píng)論-247  文章-5  trackbacks-0

          依賴

          pom.xml ( maven )
          <properties>
            <spring.version>3.0.5.RELEASE</spring.version>
          </properties>
          <dependencies>
            <dependency>
              <groupId>org.springframework</groupId>
              <artifactId>spring-core</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>
          </dependencies>
          沒有使用 maven 的需手工導(dǎo)入包 ( 3.0.4 + 版本自由選擇 ) :
          spring-core-3.0.5.RELEASE.jar
          spring-asm-3.0.5.RELEASE.jar
          spring-web-3.0.5.RELEASE.jar
          spring-beans-3.0.5.RELEASE.jar
          spring-context-3.0.5.RELEASE.jar
          spring-aop-3.0.5.RELEASE.jar
          spring-webmvc-3.0.5.RELEASE.jar
          spring-context-support-3.0.5.RELEASE.jar
          spring-expression-3.0.5.RELEASE.jar
          aopalliance-1.0.jar
          commons-logging-1.1.1.jar

          web.xml 配置

          為使用 Spring MVC,首先需要在 web.xml 中配置 DispatcherServlet。
          它與 Struts 的過濾器作用類似,主要負(fù)責(zé)攔截請求并分發(fā)給對(duì)應(yīng)的目標(biāo)來處理。
          web.xml
          <servlet>
            <servlet-name>dispatcher</servlet-name>
            <servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class>
            <load-on-startup>1</load-on-startup>
          </servlet>

          <servlet-mapping>
            <servlet-name>dispatcher</servlet-name>
            <url-pattern>/</url-pattern>
          </servlet-mapping>
          這種配置方式要求項(xiàng)目中必須存在 WEB-INF/[servlet-name]-servlet.xml 配置文件 ( 如這里的 dispatcher-servlet.xml )。
          你也可以通過 <init-param> 來自定義指定配置文件的路徑和名稱。
          web.xml
          <servlet>
            <servlet-name>dispatcher</servlet-name>
            <servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class>
            <init-param>
              <param-name>contextConfigLocation</param-name>
              <param-value>classpath:spring-mvc.xml</param-value>
            </init-param>
            <load-on-startup>1</load-on-startup>
          </servlet>

          <servlet-mapping>
            <servlet-name>dispatcher</servlet-name>
            <url-pattern>*.action</url-pattern>
          </servlet-mapping>
          <load-on-startup>1</load-on-startup>
          load-on-startup 配置的是一個(gè)非負(fù)整數(shù)值,表示 Servlet 啟動(dòng)的優(yōu)先級(jí)別。數(shù)值越小,優(yōu)先級(jí)別越高。
          0 或 不配置,表示只有當(dāng)?shù)谝淮问褂迷?Servlet 時(shí),容器才會(huì)去啟動(dòng)它 ( 包括加載、實(shí)例化、以及調(diào)用 init() 方法完成初始化 )。
          1 或 > 1,表示 Servlet 將隨運(yùn)用程序的啟動(dòng)而啟動(dòng)。
          <url-pattern>*.action</url-pattern>
          表示攔截所有 .action 的請求,并交由 Spring MVC 來處理,非 .action 的請求,將不由 Spring MVC 處理。
          多個(gè)值之間用英文的逗號(hào) “,” 分隔,需要注意的是,值與值之間不能存在空格:<url-pattern>*.action,*.htm</url-pattern>
          <url-pattern>/</url-pattern>
          表示攔截所有請求,并全部交由 Spring MVC 來處理。

          Spring MVC 配置文件配置

          spring-mvc.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"
            xmlns:mvc
          ="http://www.springframework.org/schema/mvc"
            xmlns:context
          ="http://www.springframework.org/schema/context"
            xsi:schemaLocation
          ="http://www.springframework.org/schema/beans 
            http://www.springframework.org/schema/beans/spring-beans-3.0.xsd
            http://www.springframework.org/schema/mvc
            http://www.springframework.org/schema/mvc/spring-mvc-3.0.xsd
            http://www.springframework.org/schema/context 
            http://www.springframework.org/schema/context/spring-context-3.0.xsd"
          >
            
            <!-- 自動(dòng)掃描的包 -->
            <context:component-scan base-package="org.lychie.tutorial.**.controller" />
            <!-- 開啟注解支持 -->
            <mvc:annotation-driven/>
            
            <!-- 視圖處理 -->
            <bean class="org.springframework.web.servlet.view.InternalResourceViewResolver">
              <!-- 前綴 -->
              <property name="prefix" value="/WEB-INF/pages/" />
              <!-- 后綴 -->
              <property name="suffix" value=".jsp" />
            </bean>
            
          </beans>

          Simple Example

          HelloWorldController.java
          package org.lychie.tutorial.controller;

          import org.springframework.stereotype.Controller;
          import org.springframework.web.bind.annotation.RequestMapping;

          @Controller
          public class HelloWorldController {

              @RequestMapping("/hello_world")
              public String execute(){
                  return "hello_world_page";
              }
              
          }
          訪問方式:/hello_world.action
          頁面結(jié)果:WEB-INF/pages/hello_world_page.jsp ( 與 spring-mvc.xml 配置文件中的配置相關(guān)聯(lián),具體是:前綴 + 方法返回值 + 后綴 )
          @Controller
          標(biāo)識(shí)這是一個(gè)控制器,與 Struts 的 Action 作用相似。被標(biāo)識(shí)的類具有處理請求的能力。
          @RequestMapping
          映射方法訪問的 URL 地址,具體的使用放到下一章節(jié)中。

          源代碼下載

          springmvc-helloworld.zip





            
          posted on 2014-08-15 09:39 fancydeepin 閱讀(6297) 評(píng)論(1)  編輯  收藏

          評(píng)論:
          # re: spring mvc(1):基礎(chǔ)入門 2014-08-15 17:25 | 黑客的蝸牛
          不錯(cuò),收藏了!  回復(fù)  更多評(píng)論
            

          只有注冊用戶登錄后才能發(fā)表評(píng)論。


          網(wǎng)站導(dǎo)航:
           

          隨筆分類(8)

          隨筆檔案(104)

          最新隨筆

          搜索

          •  

          積分與排名

          • 積分 - 1462133
          • 排名 - 15

          最新評(píng)論

          閱讀排行榜

          主站蜘蛛池模板: 集安市| 黑水县| 会东县| 潍坊市| 枣庄市| 登封市| 桦南县| 小金县| 永川市| 南充市| 定结县| 伊宁县| 皮山县| 新竹县| 会宁县| 文水县| 临西县| 错那县| 东安县| 吉安市| 绥滨县| 东乡族自治县| 东光县| 自治县| 含山县| 廊坊市| 新宁县| 顺义区| 崇阳县| 禄丰县| 河津市| 山东省| 乌鲁木齐县| 康平县| 灵川县| 大足县| 雷州市| 柳州市| 革吉县| 双桥区| 阳西县|