SpringMVC自定义视图

一、首先在SpringMVC的配置文件中添加一个新的视图解析器

  在里面配置order属性

<!-- 视图解析器 -->
<bean
class="org.springframework.web.servlet.view.InternalResourceViewResolver">
<property name="prefix" value="/WEB-INF/view/"></property>
<property name="suffix" value=".jsp"></property>
<property name="order" value="100"></property>
</bean>
<!-- 视图解析器都会有一个order属性,通过order属性指定视图解析器的优先级。
order的作用是视图解析的优先级,值越小,优先级越高    
-->
<bean class="org.springframework.web.servlet.view.BeanNameViewResolver">
<property name="order" value="10"></property>
</bean>

二、创建一个视图类,实现View接口,实现里面的方法

  

package com.neuedu.view;

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 MyView  implements View{

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

    @Override
    public void render(Map<String, ?> model, HttpServletRequest request, HttpServletResponse response)
            throws Exception {
        response.setContentType("text/html;charset=utf8");
        System.out.println("执行了render方法");
        response.getWriter().println("新视图");
        // TODO Auto-generated method stub
        
    }

}

三、调用这个视图类中的方法

  在调用中,返回的字符串是方法的首字母小写

  

package com.neuedu.controller;
import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.RequestMapping;
@Controller
public class ViewController {
    @RequestMapping(value="/testView")
    public String testView(){
        System.out.println("ViewController执行了");
return "myView"; } }
原文地址:https://www.cnblogs.com/xuesheng/p/7440100.html