如何从表示JSP的String中呈现Spring视图?

时间:2013-12-12 17:25:19

标签: jsp spring-mvc

我刚刚进入Spring MVC,并且正在尝试从包含JSP而不是JSP文件的String中呈现视图。

例如:

public ModelAndView execute() {
    String contentToRender = "
       <p>Counting to three:</p>
       <% for (int i=1; i<4; i++) { %>
       <p>This number is <%= i %>.</p>
       <% } %>
      <p>OK.</p>
    ";
    ModelAndView view = new ModelAndView (contentToRender);
    return view;
}

哪个不起作用。

如何从控制器向页面呈现此内容?

2 个答案:

答案 0 :(得分:0)

JSTL需要以下依赖项:

<!--JSTL dependencies-->  
<dependency>  
  <groupid>javax.servlet</groupid>  
  <artifactid>jstl</artifactid>  
  <version>1.1.2</version>  
</dependency>  

<dependency>  
  <groupid>taglibs</groupid>  
  <artifactid>standard</artifactid>  
  <version>1.1.2</version>  
</dependency> 

这将是您的JSP:

<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core"%>  

<html>  
<head>  
</head>  

<body>  
   <p>Counting to three:</p>
   <c:forEach var="i" begin="1" end="4">
      <p>This number is <c:out value="${i}"/></p>
   </c:forEach>
   <p>OK.</p>
</body>  
</html>

答案 1 :(得分:0)

不确定我是否有你的意图,但是如果你想为ajax请求/动态重新加载页面部分这样做,你可以尝试注释这样的控制器动作方法并直接返回一个值:

@RequestMapping(value="/ajaxhello")
public @ResponseBody String ajaxhello(){

    return "hello";
}

对于这些技术的高级用法(SpringMVC,AJAX,...),您可以找到一个示例here

与jquery,dojo等javascript框架结合使用效果很好......