天天看點

SpringMVC 自定義視圖

SpringMVC 借助視圖解析器(ViewResovler)得到最終的的對象(View),最終視圖可以是JSP,也可能是Excel,JFreeChart 等各種表現形式的視圖。同時也可以自定義視圖,下面就講述下自定義視圖的步驟

一、配置BeanNameViewResolver 視圖解析器:使用視圖的名字來解析視圖 

        <bean class="org.springframework.web.servlet.view.BeanNameViewResolver">

         <property name="order" value="100"></property>

       </bean>

    注:通過order 屬性來定義視圖解析器的優先級,order 值越小優先級越高 

          BeanNameViewResolver 通過在IOC 容器查找Bean 來加載視圖,是以需要把編寫的視圖類(View)加入到IOC容器中 

二、編寫視圖類

import java.util.Date;
import java.util.Map;

import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;

import org.springframework.stereotype.Controller;
import org.springframework.web.servlet.View;

@Controller
public class HelloView implements View{

	@Override
	public String getContentType() {
		// TODO Auto-generated method stub
		return "text/html";
	}

	@Override
	public void render(Map<String, ?> arg0, HttpServletRequest arg1,
			HttpServletResponse arg2) throws Exception {
		// TODO Auto-generated method stub
		arg2.getWriter().print("Hello View, Time: "+new Date());
	}

}
           

注:編寫View 類(類繼承View 接口)

           a:getContentType方法:View的類型

           b:render:渲染視圖

       将View類加入IOC 容器

三、Controller調用

@RequestMapping("/testView")

    public String testView(){

        return "helloView";

    }