eclipse中使用springmvc搭建的web項目大致步驟




web項目整合springmvc

1、需要在pom.xml中添加spring-mvc依賴項

     <properties>
        <log4j.version>2.8.2</log4j.version>
    </properties>

    <dependencies>
        <dependency>
            <groupId>com.zhiyou100.video</groupId>
            <artifactId>video-service</artifactId>
            <version>0.1</version>
        </dependency>
        <dependency>
            <groupId>org.springframework</groupId>
            <artifactId>spring-webmvc</artifactId>
            <version>${spring.version}</version>
        </dependency>
        <dependency>
            <groupId>javax.servlet</groupId>
            <artifactId>javax.servlet-api</artifactId>
            <version>3.1.0</version>
<--scop設置爲provided表示鈣依賴由系統環境提供不必打包到war-->
            <scope>provided</scope>
        </dependency>

<--使用jsp作爲視圖引擎要添加jstl,如果不想添加servlert-api就在項目上右鍵buildath->configbuildpath->add libraries中添加server runtime 選擇對應的服務器即可-->
        <dependency>
            <groupId>javax.servlet</groupId>
            <artifactId>jstl</artifactId>
            <version>1.2</version>
        </dependency>
        <dependency>
            <groupId>org.apache.logging.log4j</groupId>
            <artifactId>log4j-core</artifactId>
            <version>${log4j.version}</version>
        </dependency>
        <dependency>
            <groupId>org.apache.logging.log4j</groupId>
            <artifactId>log4j-api</artifactId>
            <version>${log4j.version}</version>
        </dependency>
        <dependency>
            <groupId>org.apache.logging.log4j</groupId>
            <artifactId>log4j-web</artifactId>
            <version>${log4j.version}</version>
        </dependency>
    </dependencies>

2、創建springmvc-servlet.xml在其中指定(位於src/main/resource)
a)component-scan 讓spring去掃描@Controller @Service等註解、
b)annotaion-driven 讓springMVC 默認裝配,實現註解驅動通過上下文來支撐SpringMVC運行
c)配置視圖解析器 指定使用哪種解析器(本項目使用jsp)指定視圖文件後綴名 、存放路徑
3、創建applicationcontect.xml配置文件(位於src/main/resource)
a)該文件用來啓動和初始化spring 上下文 ,在上下文中註冊系統運行時

4、創建applicationContext指定的其他配置文件如myBatis.log4j等
5、在web.xml中配置編碼過濾器、DispatcherServlet(調度器)
6、配置ContextloadListener(在應用啓動時加載spring上下文配置文件。創建上下文)


web.xml 中spring-servlet.xml 和 application.xml 配置位置及含義

在我們進行 spring-servlet 進行開發的時候,經常會遇到配置文件配置的問題,要徹底的解決這個問題,我們需要了解 springMVC 設計的基本架構

1.SpringMVC 的配置分爲兩部分 application.xml 和 spring-servlet.xml

2.兩個配置文件的作用和配置位置

2.1.application.xml :對應的是系統級別的配置,作用範圍是系統上下文。

2.2.spring-servlet.xml:對應的是 controller 級別的配置,作用範圍是控制層上下文。

3.它們在web.xml 中的配置

3.1 application.xml 是系統級別的上下文,所以它的初始化需要放到 web.xml 中的<context-param>標籤中,同時其他的類似定時任務的配置文件等等都是放在這個標籤下進行初始化的。

3.2 spring-servlet.xml只是 controller 級別的上下文,說白了就是 servlet 級別的初始化,它不涉及到除了轉發之外的任何實體,所以它的作用範圍僅僅限制在 servlet 級別,所以它的初始化應該是跟spring 的 DispatcherServlet 初始化在一起,所以就是在 <servlet> 表情中初始化的。它有一個默認值就是【/WEB-INF/remoting-servlet.xml 】,注意配置文件的對應的名稱是【 servlet-name】-servlet.xml,所以如果你沒有給servlet 制定配置文件的位置,並且在默認位置下也沒有配置文件,那麼系統啓動的時候就會報錯。

注意:對於 servlet配置文件裏面應該初始化的東西,除了視圖的解析方式、靜態資源文件的存放位置、controller的初始化方式之外,其他的都不應該放在 servlet 配置文件中,應爲它只負責 請求的轉發,返回結果的解析以及靜態資源文件的解析,其他的對象的初始化,定時任務...都不應該放到這個配置文件下進行管理。
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章