SpringMVC resolver

IndexDelegateAction

package com.gt.kathleen.http.action.api;

import java.util.HashMap;
import java.util.Map;

import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import javax.swing.text.View;

import org.springframework.web.servlet.ModelAndView;

public class IndexDelegateAction {
	
	public ModelAndView index(HttpServletRequest req, HttpServletResponse resp) {
		System.out.println(" index ========== >>>");
		return new ModelAndView("index", "date", new Long(System.currentTimeMillis()));
    }
	
	
	public ModelAndView indexOne(HttpServletRequest req, HttpServletResponse resp) {
		System.out.println(" indexOne ========== >>>");
        return new ModelAndView("index", "date", new Long(System.currentTimeMillis()));
    }
	
	public ModelAndView findOwners(HttpServletRequest req, HttpServletResponse resp) {
		System.out.println(" findOwnersForm  view ========== >>>");
		
		return new ModelAndView("findOwnersForm");
	}
	
	public ModelAndView velocityView(HttpServletRequest req, HttpServletResponse resp) {
		System.out.println(" velocityView  view ========== >>>");
		return new ModelAndView("velocityViewName");
	}
	
	
	public ModelAndView findOwners2(HttpServletRequest req, HttpServletResponse resp) {
		System.out.println(" findOwners view========== >>>");
		return new ModelAndView("findOwners");
	}
	
	
	public ModelAndView indexTwo(HttpServletRequest req, HttpServletResponse resp,Object command) {
		System.out.println(" indexTwo ========== >>> command" + command);
		return new ModelAndView("index", "date", new Long(System.currentTimeMillis()));
	}
	
	public Map indexThree(HttpServletRequest req, HttpServletResponse resp) {
		System.out.println(" indexThree ========== >>>");
		return new HashMap();
	}
	
	public void indexFour(HttpServletRequest req, HttpServletResponse resp) {
		System.out.println(" indexFour ========== >>>");
		//return new ModelAndView("index", "date", new Long(System.currentTimeMillis()));
	}

	
	
}



views_zh_TW.properties

#welcomeView.class=org.springframework.web.servlet.view.tiles.TilesView
#welcomeView.url=welcome (<b>this is the name of a definition</b>)
        
velocityViewName.(class)=org.springframework.web.servlet.view.velocity.VelocityView
velocityViewName.url=velocityView.vm
        
findOwnersForm.(class)=org.springframework.web.servlet.view.JstlView
findOwnersForm.url=/WEB-INF/jsp/kathleen/findOwners.jsp




kathleen_servletContext-api.xml

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE beans PUBLIC "-//SPRING//DTD BEAN//EN" "http://www.springframework.org/dtd/spring-beans.dtd">

<beans>

	<!-- 设置委托的 multiActionController Action -->
	<bean id="indexActionController" class="org.springframework.web.servlet.mvc.multiaction.MultiActionController">
		<property name="methodNameResolver" ref="propsMethodNameResolver"/>
		<property name="delegate" ef="indexDelegate"/>
	</bean>

	<bean class="org.springframework.web.servlet.handler.SimpleUrlHandlerMapping">
		<property name="order" value="1"/>
		<property name="alwaysUseFullPath" value="true"/>
		<property name="interceptors">
			<list><ref bean="logInterceptor" /></list>
		</property>

		<property name="mappings">
			<props>
				<!--
					<prop key="/wap/main.do">avcVideoMultiAction</prop> <prop
					key="/wap/index.do">avcVideoMultiAction</prop> <prop
					key="/**/index.do">indexActionController</prop> <prop
					key="/action/*book.do">indexActionController</prop>
					设置被被处理的 请求的URL   
				-->
				<prop key="/**/index.do">indexActionController</prop>
			</props>
		</property>

	</bean>

	<bean id="propsMethodNameResolver" class="org.springframework.web.servlet.mvc.multiaction.PropertiesMethodNameResolver">
		<!--
			Simple URL 里面所有 /**/index.do 请求 都交给 indexDelegateAction 处理 if
			urlMap="/index.do" 则request请求只能匹配 <prop key="/*/index.do">index</prop>
		-->
		<property name="mappings">
			<props>
				<prop key="/*/index.do">index</prop>
				<prop key="/**/index.do">indexOne</prop>
				<prop key="/index.do">indexTwo</prop>
				<prop key="/**/action/index.do">indexThree</prop>
				<prop key="/*/action/index.do">findOwners</prop>
				<prop key="/*/velocity/index.do">velocityView</prop>
			</props>
			<!--
				<value> 这里不能随意修改 后缀的.. .do .html .go 要依照web.xml 文件的配置
				<servlet-mapping> <servlet-name>dispatchServlet</servlet-name>
				<url-pattern>*.do</url-pattern> </servlet-mapping> /*/index.do=index
				/**/index.form=indexOne /**/index.html=indexTwo
				/**/index.go=indexThree /*/action/index.action=indexFour </value>
			-->
		</property>
	</bean>

	<bean id="kathleen_paraMethodResolver" class="org.springframework.web.servlet.mvc.multiaction.ParameterMethodNameResolver">
		<property name="paramName" value="action"/>
		<property name="defaultMethodName" value="index"/>
	</bean>


	<bean id="indexDelegate" class="com.gt.kathleen.http.action.api.IndexDelegateAction"></bean>

	<bean class="org.springframework.web.servlet.handler.BeanNameUrlHandlerMapping">
		<property name="order" value="2"/>
	</bean>

	<bean name="/editaccount.do" class="com.gt.kathleen.http.action.api.EditAccountAction">
		<property name="cacheSeconds" value="120"/>
	</bean>

	<bean id="viewResolver" class="org.springframework.web.servlet.view.InternalResourceViewResolver">
		<property name="prefix" value="/WEB-INF/jsp/kathleen/" />
		<property name="suffix" value=".jsp" />
	</bean>
	
	<!-- jstl 视图Resovler springMVC 内定处理的就是 jsp 如果不显示设置的话 默认 就是这个 resolver -->
	<bean id="viewResolver2" class="org.springframework.web.servlet.view.InternalResourceViewResolver">
		<property name="prefix" value="/WEB-INF/jsp/other/" />
		<property name="suffix" value=".jsp" />
	</bean>
	<!-- 资源文件绑定处理 resolver -->
	<bean id="resourceViewResolver" class="org.springframework.web.servlet.view.ResourceBundleViewResolver">
		<property name="order" value="1"></property>
		<property name="basename" value="views" />
		<property name="defaultParentView" value="parentView" />
	</bean>
	<!-- .vm resovler -->
	<bean  class="org.springframework.web.servlet.view.velocity.VelocityViewResolver">
		<property name="viewClass" value="org.springframework.web.servlet.view.velocity.VelocityView">
		</property>
		<!-- 这里不允许加前缀  
			需要在 velocityConfig 设置 查找的路经
			<property name="resourceLoaderPath" value="/WEB-INF/velocity/"/>
		-->
		<property name="prefix" value=""/>
		<property name="suffix" value=".vm"/>
	</bean>

	
<!-- 
  
  This bean sets up the Velocity environment for us based on a root path for templates.
  Optionally, a properties file can be specified for more control over the Velocity
  environment, but the defaults are pretty sane for file based template loading.

	视图渲染技术 order 只能 使用一个 
	就是Order 最新小的 哪一个
 	不想 handldermapping 那样具有chaining 概念
 	
 	要想使用 多种视图 请使 org.springframework.web.servlet.view.ResourceBundleViewResolver 视图技术
-->
	
	<!-- 要使用 velocity  技术 需要 设置 这个东西 -->
	<bean id="velocityConfig" class="org.springframework.web.servlet.view.velocity.VelocityConfigurer" singleton="true">
			<!-- 
			<property name="resourceLoaderPath" value="/WEB-INF/velocity/"/>
			<property name="configLocation"><value>/WEB-INF/velocity.properties</value></property>
			-->
			<property name="velocityProperties">
				<props>
					<prop key="resource.loader">file</prop>
					<prop key="file.resource.loader.class">org.apache.velocity.runtime.resource.loader.FileResourceLoader</prop>
				    <prop key="file.resource.loader.path">/WEB-INF/velocity/</prop>
					<prop key="file.resource.loader.cache">false</prop>
				</props>
			</property>
	</bean>



</beans>




 

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值