BeanNameViewResolver自定义视图解析器

RedirectView:定义外部资源视图对象

JstlView:定义内部资源视图对象

使用自定义视图解析器

<?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:tx="http://www.springframework.org/schema/tx" 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/tx
        http://www.springframework.org/schema/tx/spring-tx.xsd http://www.springframework.org/schema/mvc http://www.springframework.org/schema/mvc/spring-mvc.xsd">

    <!--///////////////////////////////////////////////////////////////////////////////////-->
    <!--方式三:参数方法名解析器-->
   <bean id="methodNameResolver" class="org.springframework.web.servlet.mvc.multiaction.ParameterMethodNameResolver">
       <property name="paramName" value="actionName"/>
   </bean>

    <!--视图解析器BeanNameViewResolver-->
    <bean class="org.springframework.web.servlet.view.BeanNameViewResolver"/>
    <!--定义内部资源试图对象-->
   <bean id="Inner" class="org.springframework.web.servlet.view.JstlView">
       <property name="url" value="/index.jsp"/>
   </bean>

    <!--定义外部资源视图对象-->
    <bean id="jd" class="org.springframework.web.servlet.view.RedirectView">
        <property name="url" value="https://www.jd.com"/>
    </bean>

    <!--处理器映射-->
    <bean class="org.springframework.web.servlet.handler.SimpleUrlHandlerMapping">
        <property name="urlMap">
            <map>
                <entry key="/hello" value="multiActionController"/>
            </map>
        </property>
    </bean>

    <!--处理器-->
    <bean id="multiActionController" class="cn.happy.day04BeanNameViewResolver.MyMultiActionController">
        <property name="methodNameResolver" ref="methodNameResolver"/>
    </bean>

</beans>

  实体类

package cn.happy.day04BeanNameViewResolver;

import org.springframework.web.servlet.mvc.multiaction.MultiActionController;

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

//自定义视图解析器
public class MyMultiActionController extends MultiActionController {

    //自定义两个方法
    public String doFirst(HttpServletRequest request,HttpServletResponse response){
        return "jd";//定义外部资源视图id
    }

    public String doSecond(HttpServletRequest request,HttpServletResponse response){
        return "Inner";//返回内部资源视图id
    }

}

  

原文地址:https://www.cnblogs.com/xuchangqi1/p/8641071.html

时间: 2024-09-28 12:42:34

BeanNameViewResolver自定义视图解析器的相关文章

SSM-SpringMVC-12:SpringMVC中BeanNameViewResolver这种视图解析器

------------吾亦无他,唯手熟尔,谦卑若愚,好学若饥------------- 视图解析器,这个很熟悉啊,之间就用过,就是可以简写/和.jsp的InternalResourceViewResolver 我这次书写的BeanNameViewResolver就是另外一种视图解析器,他有优点,也有缺点,优点可以访问项目外部的网页,并且灵活性很好,缺点有,最后写完案例你就明白了 要说的有处理器中的方法 package cn.dawn.day08ViewResolver; import org.

[转载]开发 Spring 自定义视图和视图解析器

原文出处 http://www.ibm.com/developerworks/cn/java/j-lo-springview/ 概述 Spring 3.0 默认包含了多种视图和视图解析器,比如 JSP.Velocity 视图等,但在某些情况下,我们需要开发自定义的视图及其解析器,以便显示特殊文件格式的视图,我们也可以使用自定义视图及解析器,针对特定的视图做相应的处理.本文将通过一个示例来介绍如何开发 Spring 自定义视图和视图解析器,来显示后缀名为 SWF 的视图,并提供一个简单的注册机制,

SpringMVC 视图和视图解析器&amp;表单标签

视图和视图解析器 请求处理方法执行完成后,最终返回一个 ModelAndView 对象.对于那些返回 String,View 或 ModeMap 等类型的处理方法,Spring MVC 也会在内部将它们装配成一个ModelAndView 对象,它包含了逻辑名和模型对象的视图 Spring MVC 借助视图解析器(ViewResolver)得到最终的视图对象(View),最终的视图可以是 JSP ,也可能是Excel.JFreeChart 等各种表现形式的视图 视图 视图的作用是渲染模型数据,将模

SpringMVC 配置多视图解析器(velocity,jsp)

1.自定义视图解析器 package com.zhaochao.controller; import java.util.HashMap; import java.util.Locale; import java.util.Map; import java.util.Set; import org.apache.commons.logging.Log; import org.apache.commons.logging.LogFactory; import org.springframework

SpringMVC——视图和视图解析器

请求处理方法执行完成后,最终返回一个 ModelAndView对象.对于那些返回 String,View 或 ModeMap 等类型的处理方法,Spring MVC 也会在内部将它们装配成一个ModelAndView 对象,它包含了逻辑名和模型对象的视图 Spring MVC 借助视图解析器(ViewResolver)得到最终的视图对象(View),最终的视图可以是 JSP ,也可能是Excel.JFreeChart 等各种表现形式的视图 对于最终究竟采取何种视图对象对模型数据进行渲染,处理器并

SpringMVC源码阅读:视图解析器

1.前言 SpringMVC是目前J2EE平台的主流Web框架,不熟悉的园友可以看SpringMVC源码阅读入门,它交代了SpringMVC的基础知识和源码阅读的技巧 本文将通过源码(基于Spring4.3.7)分析,弄清楚SpringMVC如何完成视图解析的 2.源码分析 在SpringMVC源码阅读:拦截器分析过doDispatch的运行过程,这里再分析一遍 回到DispatcherServlet类的doDispatch方法,看看doDispatch如何获取ModelAndView Hand

SpringMVC 视图解析器 InternalResourceViewResolver

我们在使用SpringMVC的时候,想必都知道,为了安全性考虑,我们的JSP文件都会放在WEB-INF下, 但是我们在外部是不可以直接访问/WEB-INF/目录下的资源对吧, 只能通过内部服务器进行转发的形式进行访问,那么InternalResourceViewResolver底层通过转发形式帮我们解决了这个问题! 为了使用InternalResourceViewResolver我们都会在SpringMVC的配置文件中进行如下配置 <!-- 自定义视图解析器 --> <bean id=&

SpringMVC自定义多视图解析器

实现通过请求url后缀判断返回值类型, 例如 localhost:8080/list 返回JSP页面, localhost:8080/list.json返回json格式数据 1.创建一枚举返回值类型 public enum ResultType { REDIRECT, JSP, JSON, XML } 2.创建自定义的viewResolver 1 public class JsonViewResolver implements ViewResolver { 2 3 private View vi

Spring视图和视图解析器

1.配置直接转发的页面 <!-- 配置直接转发的页面 --> <!-- 可以直接相应转发的页面, 而无需再经过 Handler 的方法. --> <mvc:view-controller path="/success" view-name="success"/> <!-- 在实际开发中通常都需配置 mvc:annotation-driven 标签 --> <mvc:annotation-driven><