【发布时间】:2014-07-07 12:30:36
【问题描述】:
首先,对不起我的英语,我来自白俄罗斯,所以我的英语不够好。
所以,我的问题: 我只是想学习 Spring MVC,并决定在 IntelliJ IDEA 中制作一个简单的项目。 问题是该方法处理请求调用 3 次。
控制器代码:
@Controller
@RequestMapping("/")
public class UsersListController {
@RequestMapping(method = RequestMethod.GET)
public String usersList(ModelMap model) {
UserService service = new UserService();
service.createNew("test", "test", "test", 0, Role.admin);
model.addAttribute("users", service.getAll());
System.out.println(service.getAll().size());
return "usersList";
}
}
usersList.jsp 代码:
<%@ page contentType="text/html;charset=UTF-8" language="java" %>
<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %>
<html>
<head>
<title></title>
</head>
<body>
<c:forEach var="user" items="${users}">
<c:out value="${user.name}"/>
</c:forEach>
</body>
</html>
UserService类只是服务于User对象,具体来说就是新增User、删除、更改等典型操作。
所以,我希望看到一个“测试”,但我得到:“测试测试测试”(没有足够的声誉来发布图片)
有什么想法,我该怎么办?
附:类用户——一个简单的类:
public class User {
private long id;
private String name;
private String email;
private String password;
private int age;
private Role role;
//...constructors, setters and getters
}
【问题讨论】:
-
你能展示
service.createNew(方法吗? -
您的服务等级似乎有问题,休息对我来说似乎很好。
-
看来你有用户集合 model.addAttribute("users", service.getAll());这就是为什么您会看到多个“测试”
-
service.getAll().size() 它给了你什么?
-
如果我添加 System.out.println(service.getAll().size());在控制器的方法 usersList(..) 中,我会在开头得到“1”,然后会出现“2”和“3”。所以,它告诉我,我的控制器中的方法 usersList(..) 一次又一次地调用。
标签: java spring spring-mvc intellij-idea