春天的同一个解析器的多个实例

时间:2011-08-23 17:51:57

标签: jsp spring-mvc

我有两个视图文件夹如何管理可以找到解析器方法的同一个解析器? 我试试这个,但这不起作用

<bean id="viewResolver" class="org.springframework.web.servlet.view.InternalResourceViewResolver">
<property name="prefix" value="/view/"></property>
<property name="suffix" value=".jsp"></property>
</bean>

<bean id="adminViewResolver" class="org.springframework.web.servlet.view.InternalResourceViewResolver">
<property name="prefix" value="/view/admin/"></property>
<property name="suffix" value=".jsp"></property>
</bean>

我会很乐意为任何帮助,我能学到什么?

1 个答案:

答案 0 :(得分:2)

实际上你不需要两个旋转变压器。一个人可以完成所有工作:

<bean id="viewResolver"
class="org.springframework.web.servlet.view.InternalResourceViewResolver">
<property name="prefix">
<value>/</value>
</property>
<property name="suffix">
<value>.jsp</value>
</property>
</bean>

然后是你的控制器:

//this one will be mapped as /view/index.jsp
@RequestMapping(value="/index.html", method=RequestMethod.GET)
    public ModelAndView indexView(){
        ModelAndView mv = new ModelAndView("view/index");
        return mv;
    }



//this one will be mapped as /view/admin/index.jsp
@RequestMapping(value="/admin.html", method=RequestMethod.GET)
    public ModelAndView indexView(){
        ModelAndView mv = new ModelAndView("view/admin/index");
        return mv;
    }   

或者,您可以使用@RequestMapping(value="/view")@RequestMapping(value="/view/admin")

将其映射为两个单独的控制器