Spring自帶13個(gè)ViewResolver,能將邏輯視圖名轉(zhuǎn)為物理實(shí)現(xiàn):
| ViewResolver | 描述 |
|---|---|
| BeanNameViewResolver | 將View解析為Spring應(yīng)用上下文中的bean,其中bean的ID與視圖名字相同 |
| ContentNegotiatingViewResolver | 通過(guò)考慮客戶端需要的內(nèi)容類型解析view,委托給另外一個(gè)能夠產(chǎn)生對(duì)應(yīng)內(nèi)容類型的ViewResolver |
| FreeMarkerViewResolver | 將View解析為Freemarker模板 |
| InternalResourceViewResolver | 將View解析為Web應(yīng)用的內(nèi)部資源(一般JSP) |
| JasperReportViewResolver | 將View解析為JasperReports定義 |
| ResourceBundleViewResolver | 將View解析為資源bundle(一般為屬性文件) |
| TilesViewResolver | 將View解析為Apache Tile定義,其中tile ID與視圖名稱相同。有兩個(gè)不同的TilesViewResolver實(shí)現(xiàn),分別對(duì)應(yīng)于Tiles2.0和Tiles3.0 |
| UrlBasedViewResolver | 直接根據(jù)View名稱解析View, View的名稱會(huì)匹配一個(gè)物理視圖的定義 |
| VelocityLayoutViewResolver | 將View解析為Velocity布局,從不同的Velocity模板種族和頁(yè)面 |
| VelocityViewResolver | 將View解析為Velocity模板 |
| XmlViewResolver | 將View解析為特定XML文件中的bean定義 |
| XsltViewResolver | 將View解析為XSLT轉(zhuǎn)換后的結(jié)果 |
Spring表單綁定標(biāo)簽庫(kù)標(biāo)簽:
| JSP標(biāo)簽 | 描述 |
|---|---|
| <sf:checkbox> | 渲染成一個(gè)HTML<input>標(biāo)簽,其中type屬性設(shè)置為checkbox |
| <sf:checkboxes> | 渲染成多個(gè)HTML<input>標(biāo)簽,其中type屬性設(shè)置為checkbox |
| <sf:errors> | 在一個(gè)HTML<span>中渲染輸入域的錯(cuò)誤 |
| <sf:form> | 渲染成一個(gè)HTML<form>標(biāo)簽,并為其內(nèi)部標(biāo)簽暴露綁定路徑,用于數(shù)據(jù)綁定 |
| <sf:hidden> | 渲染成一個(gè)HTML<form>標(biāo)簽,其中type設(shè)置為hidden |
| <sf:input> | 渲染成一個(gè)HTML<form>標(biāo)簽,其中type設(shè)置為text |
| <sf:label> | 渲染成一個(gè)HTML<label>標(biāo)簽 |
| <sf:option> | 渲染成一個(gè)HTML<option>標(biāo)簽,其selected屬性根據(jù)所綁定的值進(jìn)行設(shè)置 |
| <sf:options> | 按照綁定的集合、數(shù)組或MAP,渲染成一個(gè)HTML<option>標(biāo)簽的列表 |
| <sf:password> | 渲染成一個(gè)HTML<form>標(biāo)簽,其中type設(shè)置為password |
| <sf:radiobutton> | 渲染成一個(gè)HTML<form>標(biāo)簽,其中type設(shè)置為radio |
| <sf:radiobuttons> | 渲染成多個(gè)HTML<form>標(biāo)簽,其中type設(shè)置為radio |
| <sf:select> | 渲染為一個(gè)HTML<select>標(biāo)簽 |
| <sf:textarea> | 渲染為一個(gè)HTML<textarea>標(biāo)簽 |
Spring數(shù)據(jù)綁定標(biāo)簽:
| JSP標(biāo)簽 | 描述 |
|---|---|
| <s:bind> | 將綁定屬性的狀態(tài)導(dǎo)出到一個(gè)名為status的頁(yè)面作用域?qū)傩灾?,與<s:path>組合使用獲取綁定屬性值 |
| <s:escapeBody> | 將標(biāo)簽體中的內(nèi)容進(jìn)行HTML/JavaScript轉(zhuǎn)義 |
| <s:hasBindErrors> | 根據(jù)指定模型對(duì)象(在請(qǐng)求屬性中)是否有綁定錯(cuò)誤,有條件地渲染內(nèi)容 |
| <s:htmlEscape> | 為當(dāng)前頁(yè)面設(shè)置默認(rèn)的HTML轉(zhuǎn)義值 |
| <s:message> | 根據(jù)給定的編碼獲取信息,進(jìn)行渲染/設(shè)置為頁(yè)面作用域/請(qǐng)求作用域/會(huì)話作用域/應(yīng)用作用域變量(使用var和scope實(shí)現(xiàn)) |
| <s:nestedPath> | 設(shè)置嵌入式的path,用于<s:bind>中 |
| <s:theme> | 根據(jù)給定的編碼獲取主題信息,進(jìn)行渲染/設(shè)置為頁(yè)面作用域/請(qǐng)求作用域/會(huì)話作用域/應(yīng)用作用域變量(使用var和scope實(shí)現(xiàn)) |
| <s:transform> | 使用命令對(duì)象的屬性編輯器轉(zhuǎn)換命令對(duì)象中不包含的屬性 |
| <s:url> | 創(chuàng)建相對(duì)于上下文的URL,支持URI模板變量以及HTML/XML/JavaScript轉(zhuǎn)義??梢凿秩綰RL(默認(rèn)行為),設(shè)置為頁(yè)面作用域/請(qǐng)求作用域/會(huì)話作用域/應(yīng)用作用域變量(使用var和scope實(shí)現(xiàn)) |
| <s:eval> | 計(jì)算符合SpEL語(yǔ)法的某個(gè)表達(dá)式的值,進(jìn)行渲染/設(shè)置為頁(yè)面作用域/請(qǐng)求作用域/會(huì)話作用域/應(yīng)用作用域變量(使用var和scope實(shí)現(xiàn)) |