Java 值未显示在c:foreach循环中

Java 值未显示在c:foreach循环中,java,jsp,spring-mvc,jstl,Java,Jsp,Spring Mvc,Jstl,我试图从Spring类向JSP传递ArrayList迭代器,但在使用c:foreach循环时,这些值没有显示出来。有人能帮忙吗?这是我春季课的重要部分 import org.springframework.ui.Model; import org.springframework.web.servlet.mvc.Controller; import org.springframework.web.servlet.ModelAndView; import javax.servlet.ServletE

我试图从Spring类向JSP传递ArrayList迭代器,但在使用c:foreach循环时,这些值没有显示出来。有人能帮忙吗?这是我春季课的重要部分

import org.springframework.ui.Model;
import org.springframework.web.servlet.mvc.Controller;
import org.springframework.web.servlet.ModelAndView;
import javax.servlet.ServletException;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;

import org.apache.commons.logging.Log;
import org.apache.commons.logging.LogFactory;
import java.io.IOException;
import java.util.ArrayList;

public class HelloWorldController implements Controller {
    protected final Log logger = LogFactory.getLog(getClass());

    public ModelAndView handleRequest(HttpServletRequest request,
            HttpServletResponse response) throws ServletException, IOException {
        logger.info("Return View");
        ArrayList<RandomNumber> random = new ArrayList<RandomNumber>();
        for (int i = 1; i <= 10; i++) {
            RandomNumber number = new RandomNumber();
            number.setNumber((int) Math.random() * 100);
            random.add(number);
        }
        ModelAndView modelAndView = new ModelAndView("helloworld.jsp");
        Model model = (Model) modelAndView.getModel();
        model.addAllAttributes(random);
        return modelAndView;
    }
}
导入org.springframework.ui.Model;
导入org.springframework.web.servlet.mvc.Controller;
导入org.springframework.web.servlet.ModelAndView;
导入javax.servlet.ServletException;
导入javax.servlet.http.HttpServletRequest;
导入javax.servlet.http.HttpServletResponse;
导入org.apache.commons.logging.Log;
导入org.apache.commons.logging.LogFactory;
导入java.io.IOException;
导入java.util.ArrayList;
公共类HelloWorldController实现控制器{
受保护的最终日志记录器=LogFactory.getLog(getClass());
公共模型和视图句柄请求(HttpServletRequest,
HttpServletResponse响应)引发ServletException,IOException{
logger.info(“返回视图”);
ArrayList random=新的ArrayList();
对于(int i=1;i我将更改该行:

model.addAllAttributes(random);
致:

现在在上下文中有了一个“randoms”属性(在名称中添加“s”以解决我认为与var命名有关的另一个问题)。然后将jsp更改为(注意
random
,因为var名称避免了与
randoms
集合重叠):



我不做SpringMVC,但也许你应该做一个
model.addAttribute(“random”,random)
在返回
ModelAndView
之前,您至少不应该设置
迭代器,而应该设置整个
集合
。感谢您的帮助。我认为我的主要问题是我基本上只有JSP、Spring控制器类和RandomNumber类,我正在尝试运行JSP类直接运行而不运行控制器类。我已经测试过了,ArrayList似乎没有被创建,这让我相信控制器中没有运行任何东西。我想我已经有一些基本的Spring需要改进,如果我有任何其他问题,我会这样做,然后回到这里。谢谢大家感谢他们的善意帮助。
model.addAllAttributes(random);
model.addObject("randoms", random); 
<c:forEach var="random" items="${randoms}">