jsp - 将 ArrayList 从 Spring MVC 操作传递到 JSP 时出现问题

标签 jsp spring-mvc arraylist jstl

我正在尝试将 User 类型的对象列表从 Spring MVC 操作传递到 JSP。

这是 User 类的样子:

public class User {

    String name = null;

    public String getName() {
        return name;
    }
    public void setName(String name) {
        this.name = name;
    }
}

这是 Spring MVC 操作方法:

@RequestMapping("/search.htm")
public String searchUser(@ModelAttribute("user") User user,
        @ModelAttribute("userSearchResult") ArrayList<User> usersSearchResult) {
    usersSearchResult.add(new User()) ;
    usersSearchResult.get(0).setName("name1") ;
    System.out.println(usersSearchResult.get(0).getName()) ;
    System.out.println(user.getName());
    return "search" ;
}

这是 JSP 代码:

<br/>
-----------------------<br/>
SEARCH RESULTS<br/>
-----------------------<br/>
#Results Shown: ${fn:length(userSearchResult)}
<br/>

<c:forEach items="${usersSearchResult}" var="auser">
    <br/>
    ------------<br/>
    ${auser.name}<br/>
    ------------<br/>
    <br/>
</c:forEach>

length 函数正确返回值 1,但 auser.name 不显示任何内容。

这是怎么造成的,如何解决?

最佳答案

您使用usersSearchResult<c:forEach>标签,和 userSearchResult长度。

IMO 它应该只是 users ;这是一个用户列表。上下文是隐含的。

关于jsp - 将 ArrayList 从 Spring MVC 操作传递到 JSP 时出现问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12353102/

相关文章:

java - 构造函数未定义

创建大量对象的ArrayList时Java堆空间错误?

java - 通过java bean显示html字符

java - org.apache.jasper.JasperException : The function test must be used with a prefix when a default namespace is not specified

eclipse - 仅获取 "Run on server"选项的取消。

forms - jsp上的spring mvc多种形式

Spring 3.1 MVC - 表单处理工作流程最佳实践

java - 前缀 "redirect:"无法解析 View

java - 创建类路径资源 [spring/business-config.xml] 中定义的名称为 'entityManagerFactory' 的 bean 时出错

java - 对NX3矩阵进行排序(最有效的方法)