Spring MVC 環境搭建(一)

一、建立 JavaWeb 項目

1、建立一個 Java 項目。
2、在項目下新建一個文件夾 webapp (命名可自取,這個目錄即是網站根目錄),再在該文件夾下新建一個 WEB-INF 文件夾(命名固定),WEB-INF 作爲 Tomcat 啓動後的安全文件夾,瀏覽器不能訪問到該目錄下的資源。tomcat 啓動會默認會在此目錄下讀取相應配置文件。
3、在 WEB-INF 下建立 web.xml 文件(命名固定),從 tomcat 安裝路徑 /conf/web.xml 中拷貝基本的文檔結構,修改相應編碼爲 utf-8。tomcat 啓動後本身會加載安裝路徑下的大配置文件 web.xml,當發現我們項目的 WEB-INF 下也存在 web.xml 時會作爲分配置文件一併加載。
4、在 WEB-INF   下建立 jsp 文件夾(命名可自取),用來存放相關的 jsp 文件(MVC 的 View)。
5、在 WEB-INF 下建立 lib 文件夾(命名固定),用來存放相關的 jar 包。
6、在 WEB-INF 下建立 web.xml 文件(命名固定)。

二、Spring 安裝

1、從官網下載需要的版本,比如 spring-framework-4.1.9.RELEASE-dist.zip。
2、解壓,將 \spring-framework-4.1.9.RELEASE\libs 目錄的下 jar 包拷貝到項目的 lib 目錄下:

(一)、關於 servlet

servlet 是在服務器上運行的小程序,譬如用 java 編寫的 server 端程序。大致過程如下:
1、客戶端(瀏覽器)訪問網站,網站發送請求至服務器(tomcat 或 weblogic 等);
2、服務器將請求信息發送至 servlet。
3、servlet 生成響應內容(我們寫的程序控制響應)並將其傳送給服務器。
4、服務器將響應返回給客戶端。
5、客戶端進行展示。

雲服務

子系統:後臺管理系統、Restfu服務系統、Dubbo服務/管控/監控中心

Zookeeper註冊中心、報表分析系統、日誌記錄系統、定時調度系統

搜索引擎系統、分佈式文件系統、消息系統、SSO單點登錄系統

SOA管控平臺、UI組件系統、OA辦公系統、CMS新聞發佈系統

支付系統、數據庫配置系統、工作流系統、雲服務平臺


三、Spring 配置

(一)、web.xml 配置

1、打開項目中的 web.xml 添加一個Spring 的 servlet(當然 tomcat 下的 /conf/web.xml 也可以,但一般不會這麼做) ,使程序啓動時就加載此 servlet。
     
<servlet>
    <servlet-name>spring</servlet-name>
    <servlet-class>
        org.springframework.web.servlet.DispatcherServlet
    </servlet-class>
    <load-on-startup>1</load-on-startup>
</servlet>
 
load-on-startup元素標記容器是否在啓動的時候就加載這個servlet
1)它的值必須是一個整數,表示servlet應該被載入的順序
2)當值爲0或者大於0時,表示容器在應用啓動時就加載並初始化這個servlet;
3)當值小於0或者沒有指定時,則表示容器在該servlet被選擇時纔會去加載。
4)正數的值越小,該servlet的優先級越高,應用啓動時就越先加載。
5)當值相同時,容器就會自己選擇順序來加載。
所以,<load-on-startup>x</load-on-startup>,中x的取值1,2,3,4,5代表的是優先級,而非啓動延遲時間。
 
2、設置 spring url 攔截:
 
<servlet-mapping>
    <servlet-name>spring</servlet-name>
    <url-pattern>*.do</url-pattern>
</servlet-mapping>
 
<servlet-name>spring</servlet-name> 中的 spring 名字可自取,只要和上文所配的 servlet 名字對應即可。
表示 url 是 .do 爲後綴(後綴名可自取,但一般規範都命名爲 .do)的請求都必須經過 spring 的控制。
 
3、配置字符編碼過濾器
 
<filter>
    <filter-name>encodingFilter</filter-name>
    <filter-class>org.springframework.web.filter.CharacterEncodingFilter</filter-class>
    <init-param>
        <param-name>encoding</param-name>
        <param-value>UTF-8</param-value>
    </init-param>
    <init-param>
        <param-name>forceEncoding</param-name>
        <param-value>true</param-value>
    </init-param>
</filter>
 
<filter-mapping>
    <filter-name>encodingFilter</filter-name>
    <url-pattern>*.do</url-pattern>
</filter-mapping>
 
4、在下 WEB-INF 下創建 spring-servlet.xml (名稱(spring)和 web.xml 中配置的 <servlet-name>spring</servlet-name> 中的 spring 名稱要對應):
 

(二)、 Spring-servlet.xml 配置

該文件主要完成 url 映射配置;頁面目錄配置;控制器配置。即開始我們的MVC。
 
1、頁面架構(從文檔、手冊上覆制)
 
<?xml version="1.0"encoding="UTF-8"?>
<beans xmlns="http://www.springframework.org/schema/beans"
       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-2.5.xsd">
</beans>
 
2、頁面目錄配置。
 
<bean class="org.springframework.web.servlet.view.InternalResourceViewResolver">
    <property name="prefix" value="/WEB-INF/jsp" />
    <property name="suffix" value=".jsp" />
</bean>
 
配置視圖解析器, 指定控制器頁面轉向的目錄及文件後綴。
 
3、url 映射配置。
 
<bean id="urlMapping" class="org.springframework.web.servlet.handler.SimpleUrlHandlerMapping">
    <property name="mappings">
        <props>
            <prop key="/index.do">IndexAction</prop>
        </props>
    </property>
</bean>
 
SimpleUrlHandlerMapping 提供了最簡單的 URL 映射,通過 Properties 將 URL 和 Controller 對應起來 。
一個 .do 映射一個控制器。
 
4、控制器配置
 
<bean id="IndexAction" class="com.myweb.IndexAction">
    <property name="view">
        <value>index</value>
    </property>
</bean>
 
在 bean 中配置有屬性(包括 bean 格式的屬性)時,bean 對應的 java 文件內必須要定義一個與 property 的 name 名字一樣的屬性值,並且需要有這個屬性值的 getter 和 setter 方法。
 
5、根據 com.myweb.indexAction 寫 controller,完成處理請求的 servlet。
6、加入 spring 項目啓動必須的依賴包
解決:
7、spring MVC 環境搭建完成。
結果:

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章