视图配置:
  <bean id="viewInter"  class="org.springframework.web.servlet.view.InternalResourceViewResolver">
<property name="order" value="0" />
<property name="viewClass" value="org.springframework.web.servlet.view.JstlView" />
<property name="prefix" value="/WEB-INF/view/" />
<property name="suffix" value=".jsp" />
</bean>
<bean id="vieResolver"  class="org.springframework.web.servlet.view.UrlBasedViewResolver">
<property name="order" value="1" />
<property name="viewClass" value="org.springframework.web.servlet.view.JstlView" />
<property name="prefix" value="/WEB-INF/test/" />
<property name="suffix" value=".jsp" />
</bean>
注:我想把jsp页面放在不同的目录下,通过设置ViewResolver的优先级,在上级找不到对应的view时, 自动转到下级渲染view,如上设置,默认始终在/WEB-INF/view/ 目录下找jsp文件。我开始把上述第二个配置的 UrlBasedViewResolver 也写成 InternalResourceViewResolver配置(是不是有点二)不行,后来换成现在的还是不行,这个ViewResolver上下级是如何协调的呢springmvcjsp

解决方案 »

  1.   

    像你这种需求的没做过,但是返回不同目录的页面有写过,通过return "这里可以是页面放置的不同目录" 比如web-inf/view/login/login.jsp    web-inf/view/add.jsp    根据逻辑判断,分别 return "login/login.jsp" return "add.jsp"
      

  2.   

    嗯,你这种方法和我想的一样 配置成这样--》<property name="prefix" value="/WEB-INF/" /> ,在return时----> admin(文件目录)/admin.jsp(视图)。问题是:这样一来,大部分return都得这么写? 你用spring mvc 做项目时,.jsp文件都放在一个目录下? 在用上述方法放回。还是
      

  3.   

    为什么要这样做呢?都是Jsp文件。
    应该在WEB-INF下面建一个pages目录,然后把你得test,view目录放到pages目录下面就可以了。
    然后只做如下陪着就可以了。
      <bean id="viewInter"  class="org.springframework.web.servlet.view.InternalResourceViewResolver">
     <property name="order" value="0" />
     <property name="viewClass" value="org.springframework.web.servlet.view.JstlView" />
     <property name="prefix" value="/WEB-INF/pages/" />
     <property name="suffix" value=".jsp" />
     </bean>另外,我觉得开发之前应该都规划一下自己的目录结构,就没有你这种没有必要的烦恼了。