[关闭]
@slientStrom 2017-09-08T14:22:49.000000Z 字数 1565 阅读 1335

Spring MVC重定向和velocity获取项目地址问题

velocity前端获取项目地址

  • 实例:
    html #springUrl()
    <link href="#springUrl('/styles/login.css')" rel="stylesheet" type="text/css"/>

springmvc重定向

图片上传测试:
测试图片

  1. public class LoginController {
  2. private static final Logger logger=LoggerFactory.getLogger(LoginController.class);
  3. @RequestMapping(value={"/","index.htm"})
  4. public String index(HttpServletRequest request,ModelMap mmMap){
  5. logger.info("index 方法");
  6. Map<String, ?> map = RequestContextUtils.getInputFlashMap(request);
  7. if(map!=null){
  8. logger.info("msg is {}",map.get("msg"));
  9. mmMap.addAttribute("msg", map.get("msg"));
  10. }
  11. return "index";
  12. }
  13. @RequestMapping(value="loginSuccess.htm")
  14. public String login(RedirectAttributes attr,ModelMap map,HttpSession session,@RequestParam(name="loginName")String loginName
  15. ,@RequestParam(name="loginPass")String loginPass,
  16. @RequestParam(name="vlidateCode") String vlidateCode){
  17. ModelAndView view=new ModelAndView();
  18. String code =(String) session.getAttribute("code");
  19. if(!vlidateCode.equalsIgnoreCase(code)){
  20. logger.info("{} login error",loginName);
  21. attr.addFlashAttribute("msg", "codeError");
  22. }else if(!"admin".equals(loginName) || !"123456".equals(loginPass)){
  23. logger.info("the username {} password is {} logger error",loginName,loginPass);
  24. attr.addFlashAttribute("msg", "loginError");
  25. }else{
  26. view.setViewName("loginSuccess");
  27. map.addAttribute("success", "success");
  28. return "loginSuccess";
  29. }
  30. return "redirect:index.htm";
  31. }
  32. }

代码解释:

  1. 其中:RedirectAttributes addFlashAttribute相当于htmlpost请求,将url中的传递数据隐藏。此例子中将地址栏的url重定向到index.htm.....
  2. controller层中重新拦截后缀为index.htm的请求。
  3. 其中:
  4. Map<String, ?> map = RequestContextUtils.getInputFlashMap(request);将重定向传递的数据保存在map中。
  5. 利用map.get("msg")取值。
添加新批注
在作者公开此批注前,只有你和作者可见。
回复批注