Java - modelandview in modelandview

时间:2013-10-05 07:23:55

标签: spring templates java-ee modelandview

如何使用modelandview参数将addObject添加到modelandview?我的意思是这样的:

    ModelAndView mav = new ModelAndView();
    mav.setViewName("index");
    ModelAndView m = new ModelAndView();
    m.addObject("test", t, '1');
    mav.addObject("site", m);

我的意思是我有一个索引文件,我像模板一样处理,我想将其解析为其他文件(模板)

我的第二个问题: 这是好的解决方案吗?如果没有,请告诉我什么是优先的:)

抱歉,我是Java EE和Spring的新手

编辑:源代码

1 个答案:

答案 0 :(得分:0)

ModelAndView只是Spring的MVC请求处理使用的容器。您添加到ModelAndView的每个对象都将作为请求属性(request#setAttribute)添加,然后在您的JSP中可用。

嵌套ModelAndView没有任何意义。您只需从JSP文件转发请求,所有模型属性仍将在请求中设置并可用。


关于你的方法:

我想说可以使用模板 JSP(例如 index )。我个人更喜欢使用带有布局的TAG文件,然后将JSP文件包含在此布局中。

<%@ tag language="java" description="Content border for layout decoration." trimDirectiveWhitespaces="true" %>
<!DOCTYPE html>
<html lang="cs">
<head profile="http://www.w3.org/2005/10/profile">
    <meta charset="utf-8" />
</head>
<body>
    <div class="pageContent">
        <jsp:doBody />
    </div>
</body>
</html>

-

<%@ include file="/WEB-INF/taglib.jspf"%>
<layout:admin>
    THIS IS MY CONTENT
</layout:admin>

或者,您可以使用模板引擎,例如Apache Tiles