我有这样的代码。
@RequestMapping(值=" /人",方法= RequestMethod.POST) public @ResponseBody String addUser(@RequestParam String name){
returnText=name;
//List<Person> personList = personService.getAllzonedetails(returnText);
System.out.println(returnText);
//model.addAttribute("personsajax", personList);
return **returnText**;
}
@RequestMapping(value = "/persons", method = RequestMethod.GET)
public String getPersons(Model model) {
newvariable = returnText;
System.out.println(newvariable);
logger.debug("Received request to show all persons");
// Retrieve all persons by delegating the call to PersonService
List<Person> persons = personService.getAll();
List<Person> persons1 = personService.getAllzonedetails(newvariable);
// Attach persons to the Model
model.addAttribute("persons", persons);
model.addAttribute("personsajax", persons1);
// This will resolve to /WEB-INF/jsp/personspage.jsp
return "personspage";
}
我想在System.out.println(newvariable)中获取returnText post值;在get方法中传递jsp页面。
在jsp中传递post值的任何其他方式。
...谢谢
答案 0 :(得分:0)
我认为你要做的是当在post方法中添加用户然后你想要重定向到GET方法时,你想要在人员列表页面上显示新添加的用户名。
你在这里尝试的不合适。首先,您需要从POST方法更改 @ResponseBody 注释,并简单地从该函数返回“redirect:/ persons”字符串。这将重定向到您的GET方法。现在要在GET方法中使用新添加的用户名,您需要使用 RedirectAttributes 将名称返回给GET方法。
为此,在您的帖子方法签名中添加一个参数RedirectAttributes redirectAttributes
。然后在返回语句之前插入下面的行。
redirectAttributes.addFlashAttribute("newUserName", returnText);
然后,您可以使用EL ${newUserName}
访问JSP中的值。
我希望这会对你有所帮助。