日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 前端技术 > javascript >内容正文

javascript

SpringMVC 视图解析器

發布時間:2024/3/26 javascript 50 豆豆
生活随笔 收集整理的這篇文章主要介紹了 SpringMVC 视图解析器 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

1.視圖解析器根據 把控制器返回的邏輯視圖名 確定?渲染模型的視圖文件的物理位置。

? ??Spring MVC的一個重要特性:將控制器中處理請求的邏輯 和 視圖中渲染實現 解耦。 控制器方法和視圖實現 只會在模型內容上保持一致,這是兩者最大的關聯。

2.Spring提供了13個視圖解析器,能夠將邏輯視圖名 轉換為 物理實現。其中 每一項都對應Java Web應用中特定的某種視圖技術。

? ? ?視圖解析器InternalResourceViewResolver 一般會用來解析JSP視圖。JSP曾經是,而且現在依然還是Java領域占主導地位的視圖技術

3.配置解析JSP的視圖解析器

? ? Spring MVC中?InternalResourceViewResolver是最簡單和最常用的視圖解析器 能將視圖名映射為JSP文件

? ? JavaConfig中配置如下 參考?搭建Spring MVC Web項目----JavaConfig?? ?

? ? 如下配置??home 解析為“/WEB-INF/views/home.jsp”?

? ? ? ? ? ? ? ? ? ? books/detail 解析為“/WEB-INF/views/books/detail.jsp”

@Bean public ViewResolver viewResolver() { // 配置 試圖解析器InternalResourceViewResolver viewResolver = new InternalResourceViewResolver();viewResolver.setPrefix("WEB-INF/views");viewResolver.setSuffix(".jsp");viewResolver.setExposeContextBeansAsAttributes(true);return viewResolver; }

? ? ? ?XML配置 參考?搭建 Spring MVC WEB項目----XML配置

<!-- 視圖解析器 --><beanclass="org.springframework.web.servlet.view.InternalResourceViewResolver"><property name="prefix" value="/WEB-INF/views/"></property><property name="suffix" value=".jsp"></property></bean>

4.標簽庫

? ? ?參考?SpringMvc對JSP的支持---支持JSTL標簽庫

5.Spring對JSP標簽庫的支持--解析JSTL視圖?

? ??參考SpringMvc對JSP的支持---支持JSTL標簽庫

6.Spring對JSP標簽庫的支持--Spring的JSP標簽庫

? ? 參考?SpringMVC對JSP的支持---Spring的JSP標簽庫---Spring通用標簽庫

7.Thymeleaf 視圖

? ? ?以上講的是在Spring 中集成JPS視圖 有時候項目中需要使用Thymeleaf視圖。為了在Spring 中使用Thymeleaf,需要配置三個 啟用Thymeleaf與Spring集成的 bean。這樣 應用程序就可以將響應中的模板渲染到Spring MVC控制器所處理的請求中。Java配置如下:

? ? ? ThymeleafViewResolver是Spring MVC中viewResolver的一個實現類。像其他(JSP)視圖解析器一樣,接收一個邏輯視圖名并將其解析為Thymeleaf模板視圖,它解析成的視圖是一個Thymeleaf模板。SpringTemplateEngine會在Spring中啟用Thymeleaf引擎,用來解析模板,并基于這些模板渲染結果。TemplateResovler 加載Thymeleaf模板 ,與JSP的InternalResourceViewResolver類似,它也是通過prefix和suffix來定位Thymeleaf引擎 最終定位和查找模板。

? ? ?這還有個問題?TemplateResolver 沒找到是哪個jar包里的

import org.springframework.context.annotation.Bean; import org.springframework.web.servlet.ViewResolver; import org.thymeleaf.TemplateEngine; import org.thymeleaf.spring5.SpringTemplateEngine; import org.thymeleaf.spring5.view.ThymeleafViewResolver; import org.thymeleaf.templateresolver.ITemplateResolver; import org.thymeleaf.templateresolver.ServletContextTemplateResolver;// Thymeleaf 視圖解析器@Beanpublic ViewResolver viewResolver(SpringTemplateEngine templateEngine) {ThymeleafViewResolver viewResolver = new ThymeleafViewResolver();viewResolver.setTemplateEngine(templateEngine);return viewResolver;}// 模板引擎@Beanpublic TemplateEngine templateEngine(TemplateResolver templateResolver) {SpringTemplateEngine templateEngine = new SpringTemplateEngine();templateEngine.setTemplateResolver(templateResolver);return templateEngine;}// 模板解析器@Beanpublic TemplateResolver templateResolver() {TemplateResolver templateResolver = new ServletContextTemplateResolver(null);templateResolver.setPrefix("WEB-INF/templates/");templateResolver.setSuffix(".html");//要解析的模板會渲染成HTML 5輸出templateResolver.setTemplateModel("HTML5"); return templateResolver;}

總結

以上是生活随笔為你收集整理的SpringMVC 视图解析器的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。