首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如果Spring控制器位于不同的文件夹中,如何给出它们的视图页?

问如果Spring控制器位于不同的文件夹中,如何给出它们的视图页?
EN

Stack Overflow用户
提问于 2013-10-04 08:46:19
回答 2查看 6.7K关注 0票数 3

我的WEB-INF中有两个文件夹。

Folder1包含3 jsp类page1.jsp , page2.jsp , page3.jsp。

Folder2包含page4.jsp。

在dispatcher-Serlet.xml中,我配置了

代码语言:javascript
复制
<bean id="viewResolver"
    class="org.springframework.web.servlet.view.InternalResourceViewResolver">
    <property name="prefix" value="/WEB-INF/folder1/" />
    <property name="suffix" value=".jsp" />
</bean>

在Controller中,

代码语言:javascript
复制
@RequestMapping(value="page4.html",method=RequestMethod.GET)
public  String getTransfer(){

    List<String> list = new LinkedList<String>();
    Hashtable<String , Object> map = MyHashtableClasss.getDetails;

    if(!map.isEmpty()){
        Set<String> keys = map.keySet();
        for(String key: keys){
                list.add(map.get(key).getUserName());
        }
    }
    model.addAttribute(list);

    return "page4";
}

如何将page4.jsp放到视图中。因为我在Folder1中没有那个页面4.jsp。

通常,如何才能在Spring.Is中的不同文件夹中显示不同的.Is?如果没有,还有什么可供选择的。

希望我们的堆栈用户能帮我。

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2013-10-04 09:04:36

1变化

<property name="prefix" value="/WEB-INF/folder1/" />

至

<property name="prefix" value="/WEB-INF/" />

并返回文件夹路径的视图。

代码语言:javascript
复制
return "folder1/page4";

2的其他方法是配置多个视图解析器bean,并为每个bean设置优先级。检查以下链接以了解解决方案和限制。

Multiple View resolvers in spring mvc

Spring MVC with multiple view resolvers

编辑

另一种方法是通过扩展InternalResourceViewResolver构建自己的视图解析器。在扩展视图解析器中,您可以添加逻辑来扫描子文件夹,并找到带有返回视图名称的jsp文件。

票数 6
EN

Stack Overflow用户

发布于 2013-10-04 10:16:12

您可以选择为ViewResolver指定哪个文件夹。

如果指定/folder1,JSP将在folder1下解析。如果没有,则需要在需要时自己指定/folder1。

如果你真的需要或者它有助于分解,你可以用一个函数或者常量来帮你。

代码语言:javascript
复制
public class Views {
    public static String legacy (String name) {return "folder1/"+name;}
    public static String modern (String name) {return "folder2/"+name;}
}

如果在单独的应用程序上下文中定义控制器,则可以将它们与单独配置的ViewResolver (使用不同的路径)连接起来。

但这一切对我来说都是显而易见的,我不太清楚你为什么要问这样一个问题。Spring能神奇地知道,对于一个视图,您想要一个不同的文件夹吗?我希望不是,我更希望它能在我指定的文件夹中可靠地工作。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/19176958

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档