最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

SpringMVC如何配置JSP視圖解析器

 更新時(shí)間:2024年05月18日 09:01:42   作者:qq_25243147  
這篇文章主要介紹了SpringMVC如何配置JSP視圖解析器問題,具有很好的參考價(jià)值,希望對(duì)大家有所幫助,如有錯(cuò)誤或未考慮完全的地方,望不吝賜教

SpringMVC配置JSP視圖解析器

介紹

(1)Tomcat中提供了JSPServlet負(fù)責(zé)處理JSP文件。

(2)SpringMVC默認(rèn)有請(qǐng)求轉(zhuǎn)發(fā)視圖(forward:)和重定向視圖(redirect:),我們可以利用請(qǐng)求轉(zhuǎn)發(fā)視圖,將JSP文件的視圖解析任務(wù)交給JSPServlet處理,故配置JSP視圖解析器實(shí)際上是配置請(qǐng)求轉(zhuǎn)發(fā)視圖解析器,同時(shí)可以配置視圖解析器的前綴和后綴屬性來減少冗余代碼。

項(xiàng)目測(cè)試

(1)在/WEB-INF/templates下創(chuàng)建index.jsp文件

<%@ page contentType="text/html;charset=UTF-8" language="java" %>
<html>
<head>
    <title>Title</title>
</head>
<body>
<h1>jsp</h1>
</body>
</html>

(2)編寫SpringMVC-config.xml文件,配置JSP視圖解析器

<?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:context="http://www.springframework.org/schema/context"
       xmlns:mvc="http://www.springframework.org/schema/mvc"
       xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans.xsd
                           http://www.springframework.org/schema/context http://www.springframework.org/schema/context/spring-context.xsd
                           http://www.springframework.org/schema/mvc http://www.springframework.org/schema/mvc/spring-mvc.xsd">

    <context:component-scan base-package="com.wsh.controller"></context:component-scan>
    <!--配置JSP視圖解析器-->
    <bean id="internalResourceViewResolver" class="org.springframework.web.servlet.view.InternalResourceViewResolver">
        <property name="prefix" value="/WEB-INF/templates/"></property>
        <property name="suffix" value=".jsp"></property>
    </bean>

    <!--開啟注解驅(qū)動(dòng),否則控制器中帶有@RequestMapping的方法失效-->
    <mvc:annotation-driven/>
    <!--指定請(qǐng)求返回對(duì)應(yīng)頁面-->
    <mvc:view-controller path="/index" view-name="index"></mvc:view-controller>
</beans>

(3)運(yùn)行

在springmvc框架中視圖解析器都有哪些?

在Spring MVC框架中

常用的視圖解析器有以下幾種

  • 1. InternalResourceViewResolver: 這是Spring MVC中默認(rèn)的視圖解析器,用于解析JSP頁面或者HTML頁面。它會(huì)將視圖名稱解析為JSP文件所在的路徑,并且支持JSTL標(biāo)簽庫和EL表達(dá)式。
  • 2. ResourceBundleViewResolver: 這個(gè)視圖解析器將視圖名稱解析為屬性文件中定義的key值,并且根據(jù)key值在屬性文件中獲取對(duì)應(yīng)的視圖資源。它通常用于國(guó)際化的應(yīng)用程序。
  • 3. XmlViewResolver: 這個(gè)視圖解析器將視圖名稱解析為XML文件中定義的視圖配置信息,并且根據(jù)配置信息生成對(duì)應(yīng)的視圖資源。它通常用于復(fù)雜的視圖配置,如PDF或者Excel文件。
  • 4. FreeMarkerViewResolver: 這個(gè)視圖解析器用于解析FreeMarker模板,將模板名稱解析為FreeMarker模板文件所在的路徑,并且將模型數(shù)據(jù)渲染到對(duì)應(yīng)的模板中。

除此之外,Spring MVC還提供了其他的視圖解析器,如VelocityViewResolver、TilesViewResolver等。

根據(jù)不同的需求,可以選擇不同的視圖解析器來解析視圖資源。

幫我列出這些視圖解析器的一些具體用法

好的,下面是針對(duì)這些視圖解析器的一些具體用法:

1. InternalResourceViewResolver:

該視圖解析器通常用于解析JSP頁面或者HTML頁面,它會(huì)將視圖名稱解析為JSP文件所在的路徑,并且支持JSTL標(biāo)簽庫和EL表達(dá)式,常見的配置如下:

<bean id="viewResolver" class="org.springframework.web.servlet.view.InternalResourceViewResolver"> <property name="prefix" value="/WEB-INF/jsp/" /> <property name="suffix" value=".jsp" /> </bean>

其中,prefix屬性用于設(shè)置JSP文件所在的目錄,suffix屬性用于設(shè)置JSP文件的擴(kuò)展名。

2. ResourceBundleViewResolver:

該視圖解析器將視圖名稱解析為屬性文件中定義的key值,并且根據(jù)key值在屬性文件中獲取對(duì)應(yīng)的視圖資源。

常見的配置如下:

<bean id="viewResolver" class="org.springframework.web.servlet.view.ResourceBundleViewResolver"> <property name="basename" value="views" /> </bean>

其中,basename屬性用于指定屬性文件的名稱,該文件應(yīng)該存放在classpath下。

比如,如果basename值為views,則Spring會(huì)在classpath下查找views.properties文件,該文件中定義了視圖名稱與視圖資源之間的對(duì)應(yīng)關(guān)系。

3. XmlViewResolver:

該視圖解析器將視圖名稱解析為XML文件中定義的視圖配置信息,并且根據(jù)配置信息生成對(duì)應(yīng)的視圖資源。

常見的配置如下:

<bean id="viewResolver" class="org.springframework.web.servlet.view.XmlViewResolver"> <property name="location"> <value>classpath:/views.xml</value> </property> </bean>

其中,location屬性用于指定視圖配置文件的路徑,該文件中定義了視圖名稱與對(duì)應(yīng)的視圖資源之間的對(duì)應(yīng)關(guān)系。

4. FreeMarkerViewResolver:

該視圖解析器用于解析FreeMarker模板,將模板名稱解析為FreeMarker模板文件所在的路徑,并且將模型數(shù)據(jù)渲染到對(duì)應(yīng)的模板中。

常見的配置如下:

<bean id="viewResolver" class="org.springframework.web.servlet.view.freemarker.FreeMarkerViewResolver"> <property name="prefix" value="/WEB-INF/ftl/" /> <property name="suffix" value=".ftl" /> <property name="contentType" value="text/html;charset=UTF-8" /> </bean>

其中,prefix屬性用于設(shè)置FreeMarker模板文件所在的目錄,suffix屬性用于設(shè)置FreeMarker模板文件的擴(kuò)展名,contentType屬性用于指定生成的內(nèi)容類型。

需要注意的是,以上視圖解析器的使用需要結(jié)合具體場(chǎng)景來決定。

同時(shí),Spring MVC還有其他的視圖解析器,需要根據(jù)實(shí)際需求來選擇合適的視圖解析器。

總結(jié)

以上為個(gè)人經(jīng)驗(yàn),希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。

相關(guān)文章

  • Java 實(shí)現(xiàn)一個(gè)漢諾塔實(shí)戰(zhàn)練習(xí)

    Java 實(shí)現(xiàn)一個(gè)漢諾塔實(shí)戰(zhàn)練習(xí)

    漢諾塔是源于印度一個(gè)古老傳說的益智玩具。大梵天創(chuàng)造世界時(shí)做了三根石柱,在一根柱子上從下往上按大小順序摞著64片黃金圓盤。大梵天命令婆羅門把圓盤從下面開始按大小順序重新擺放在另一根柱子上。并且規(guī)定,在小圓盤上不能放大圓盤,三根柱子之間一次只能移動(dòng)一個(gè)圓盤
    2021-10-10
  • 解決Eclipse add external jars運(yùn)行出現(xiàn)java.lang.NoClassDefFoundError的方法

    解決Eclipse add external jars運(yùn)行出現(xiàn)java.lang.NoClassDefFoundErro

    本篇文章對(duì)Eclipse add external jars導(dǎo)致運(yùn)行出現(xiàn)java.lang.NoClassDefFoundError的解決方法進(jìn)行了詳細(xì)的分析介紹。需要的朋友參考下
    2013-05-05
  • MapReduce2框架的原理解析

    MapReduce2框架的原理解析

    這篇文章主要圍繞MapReduce2框架原理介紹的,文中有詳細(xì)的代碼示例,對(duì)學(xué)習(xí)有一定的幫助,需要的朋友可以借鑒參考
    2023-04-04
  • java OOM內(nèi)存泄漏原因及解決方法

    java OOM內(nèi)存泄漏原因及解決方法

    這篇文章主要介紹了java OOM內(nèi)存泄漏原因及解決方法,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下
    2019-08-08
  • Java中自己如何實(shí)現(xiàn)log2(N)

    Java中自己如何實(shí)現(xiàn)log2(N)

    這篇文章主要介紹了Java中自己實(shí)現(xiàn)log2(N)的方法,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2021-08-08
  • java實(shí)現(xiàn)Socket通信之單線程服務(wù)

    java實(shí)現(xiàn)Socket通信之單線程服務(wù)

    這篇文章主要為大家詳細(xì)介紹了java實(shí)現(xiàn)Socket通信的單線程服務(wù),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2018-07-07
  • Java微信公眾平臺(tái)開發(fā)(6) 微信開發(fā)中的token獲取

    Java微信公眾平臺(tái)開發(fā)(6) 微信開發(fā)中的token獲取

    這篇文章主要為大家詳細(xì)介紹了Java微信公眾平臺(tái)開發(fā)第六步,微信開發(fā)中的token獲取,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2017-04-04
  • 詳解SpringBoot使用RedisTemplate操作Redis的5種數(shù)據(jù)類型

    詳解SpringBoot使用RedisTemplate操作Redis的5種數(shù)據(jù)類型

    本文主要介紹了SpringBoot使用RedisTemplate操作Redis的5種數(shù)據(jù)類型,文中通過示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2022-03-03
  • Java 迪杰斯特拉算法實(shí)現(xiàn)查找最短距離的實(shí)現(xiàn)

    Java 迪杰斯特拉算法實(shí)現(xiàn)查找最短距離的實(shí)現(xiàn)

    這篇文章主要介紹了Java 迪杰斯特拉算法實(shí)現(xiàn)查找最短距離的實(shí)現(xiàn),文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2019-09-09
  • IDEA社區(qū)版下載安裝流程詳解(小白篇)

    IDEA社區(qū)版下載安裝流程詳解(小白篇)

    這篇文章主要介紹了IDEA社區(qū)版下載安裝流程詳解(小白篇),文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2020-08-08

最新評(píng)論

哈密市| 顺义区| 罗田县| 招远市| 府谷县| 泸州市| 泊头市| 保定市| 湘潭市| 泰顺县| 衡阳市| 梅州市| 余姚市| 临朐县| 东辽县| 永福县| 保山市| 玛沁县| 庆城县| 青海省| 天长市| 建宁县| 景谷| 望江县| 灵寿县| 锦州市| 潞西市| 隆昌县| 靖江市| 鄂托克前旗| 滁州市| 仁布县| 合水县| 新沂市| 乌兰察布市| 乌苏市| 阿鲁科尔沁旗| 海兴县| 调兵山市| 忻城县| 溧阳市|