我是Spring的新手,我想:
1)当用户访问 localhost / admin / users 时,我希望应用预定义选项
2)在 localhost / admin / users 上我有一些按钮执行带有四个参数的POST
,因为我的老板不想让我使用get(我认为最好也使用POST
3)我有一个管理adminUsersPost
请求的控制器方法POST
,我希望该方法能够使用adminUsersGet
方法重新加载我的浏览器,但是POST
请求中发送的信息。
我现在在浏览器中收到的是一个网页内容采用奇怪编码的警报,我希望它是正确的,但我不知道。
@RequestMapping(value = "/admin/users", method = RequestMethod.GET)
public ModelAndView adminUsersGet(
Integer page,
Integer items,
String sorting,
String sortingDirection)
{
// predefined options
Integer pagina = 1;
Integer itemsPorPagina = 10;
String ordenacion = "idUsuario";
String dirOrdenacion = "asc";
// end of predefined options
// Code that I want for it to use POST params from the other method
ModelAndView mv = new ModelAndView("adminUsers");
return mv;
}
@RequestMapping(value = "/admin/users", method = RequestMethod.POST)
public ModelAndView adminUsersPost(
@RequestParam(value = "pagina") Integer pagina,
@RequestParam(value = "itemsPorPagina") Integer itemsPorPagina,
@RequestParam(value = "ordenacion") String ordenacion,
@RequestParam(value = "dirOrdenacion") String dirOrdenacion)
{
// Here I try to pass the POST parameters to the GET method for reloading
// the webpage with the new content
return adminUsersGet(pagina, itemsPorPagina, ordenacion, dirOrdenacion);
}
答案 0 :(得分:1)
模式POST参数 - > GET相同的参数是常见的参数。你需要的是RedirectAttributes,它将你的参数存储到会话中并重定向到你的GET方法。一旦GET被命中,spring将自动从会话中删除所有属性,因此在GET方法的浏览器URL中不会显示任何POST参数。请查看here以获取完整示例,并根据您的需要进行调整。