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
}
}