<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>

    隨筆-126  評論-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 的需手工導入包 ( 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ā)給對應的目標來處理。
    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>
    這種配置方式要求項目中必須存在 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 配置的是一個非負整數(shù)值,表示 Servlet 啟動的優(yōu)先級別。數(shù)值越小,優(yōu)先級別越高。
    0 或 不配置,表示只有當?shù)谝淮问褂迷?Servlet 時,容器才會去啟動它 ( 包括加載、實例化、以及調(diào)用 init() 方法完成初始化 )。
    1 或 > 1,表示 Servlet 將隨運用程序的啟動而啟動。
    <url-pattern>*.action</url-pattern>
    表示攔截所有 .action 的請求,并交由 Spring MVC 來處理,非 .action 的請求,將不由 Spring MVC 處理。
    多個值之間用英文的逗號 “,” 分隔,需要注意的是,值與值之間不能存在空格:<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"
    >
      
      <!-- 自動掃描的包 -->
      <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 配置文件中的配置相關聯(lián),具體是:前綴 + 方法返回值 + 后綴 )
    @Controller
    標識這是一個控制器,與 Struts 的 Action 作用相似。被標識的類具有處理請求的能力。
    @RequestMapping
    映射方法訪問的 URL 地址,具體的使用放到下一章節(jié)中。

    源代碼下載

    springmvc-helloworld.zip





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

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

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


    網(wǎng)站導航:
     
    主站蜘蛛池模板: 亚洲日本乱码卡2卡3卡新区| 亚洲国产女人aaa毛片在线| 亚洲一区无码中文字幕乱码| 日韩精品人妻系列无码专区免费| 国产亚洲精AA在线观看SEE | 国产亚洲3p无码一区二区| 中文字幕视频免费在线观看| 国产日产亚洲系列| 国产免费一区二区三区在线观看| 亚洲AV永久精品爱情岛论坛| 97视频免费观看2区| 亚洲乱码在线播放| 日本免费福利视频| 成人国产网站v片免费观看| 国产精品亚洲不卡一区二区三区 | 在线观看免费视频网站色| 久久青青草原亚洲AV无码麻豆| 无码国产精品一区二区免费16| 亚洲女人18毛片水真多| 大学生一级特黄的免费大片视频 | 亚洲一区二区三区高清在线观看| 国产区卡一卡二卡三乱码免费| 青青青视频免费观看| 亚洲大尺度无码无码专区| 久久国产免费福利永久| 亚洲成AV人影片在线观看| 国产亚洲精品成人AA片新蒲金| 久久精品中文字幕免费| 亚洲国产成人无码AV在线影院| 亚洲精品视频免费| 老汉精品免费AV在线播放| 亚洲日韩av无码中文| 激情综合色五月丁香六月亚洲| 51视频精品全部免费最新| 337P日本欧洲亚洲大胆精品| 亚洲av一综合av一区| 日本一道本高清免费| 久久伊人免费视频| 羞羞漫画登录页面免费| 久久精品国产亚洲AV高清热| 免费亚洲视频在线观看|