BeanNameViewResolver自定义视图解析器

Posted 清风徐来

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了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
    }

}

  

 

以上是关于BeanNameViewResolver自定义视图解析器的主要内容,如果未能解决你的问题,请参考以下文章

将自定义视图放入自定义 ScrollView

为啥堆栈视图中的自定义视图重叠?

如何将自定义视图动画化为自定义视图

如何为 MkAnnotation View 自定义视图,就像表格视图的自定义单元格一样?

自定义视图不适合 UItableview 中的标题

从 nib 文件在自定义视图中设置自定义委托