當前位置:
首頁 >
前端技术
> javascript
>内容正文
javascript
Spring MVC 中自定义视图 @Component 及 配置 多个视图解析器 Excel视图
生活随笔
收集整理的這篇文章主要介紹了
Spring MVC 中自定义视图 @Component 及 配置 多个视图解析器 Excel视图
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
首先我們建立一個自己的View實現View接口。要注意在類上面加上@Component的注解,因為看BeanNameViewResolver的源碼知道,是直接從ioc容器里面拿的根據名字拿的視圖,所以我們得把我們自己寫的視圖放到容器里面。
HelloView.java
package com.hust.springmvc.views;import java.util.Date; import java.util.Map;import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse;import org.springframework.stereotype.Component; import org.springframework.web.servlet.View;@Component public class HelloView implements View {@Overridepublic String getContentType() {return "text/html";}@Overridepublic void render(Map<String, ?> model, HttpServletRequest request, HttpServletResponse response)throws Exception {response.getWriter().print("hello view, time:" + new Date());;} }然后在spring配置文件中配置
<!-- 配置視圖解析器 BeanNameViewResolver 解析器: 使用視圖的名字來解析視圖 --><!-- 通過order 屬性來定義視圖解析器的優先級, order 值越小優先級越高--><bean class="org.springframework.web.servlet.view.BeanNameViewResolver"><property name="order" value="100"></property></bean>注意這個order,這個是值越小優先級就越高,我們要把常用的放在后面考慮,不常用的得放在前面,所以這個優先級100已經是很高了,因為看下InternalResourceViewResolver的源碼就知道,在它的父類里有order屬性。
這個肯定是優先級最低。
這樣我們在SpringMVCTest中@RequestMapping配置一下testView,再去index.jsp設置一個跳轉。
然后啟動服務器,就可以看到效果啦。
順便說一下如果我們想實現其他視圖在render里面渲染即可,比方說Excel視圖。我們打開View。
可以看到其實已經有了AbstractExcelView點進去
我們去實現這個buildExcelDocument接口就行。
總結
以上是生活随笔為你收集整理的Spring MVC 中自定义视图 @Component 及 配置 多个视图解析器 Excel视图的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: linux下查看系统进程占用的句柄数
- 下一篇: NodeJS Buffer(缓冲区)