• spring MVC页面的重定向


    如图,一个jsp页面跳转到下一个jsp页面通常需要上一个页面发出带有参数得请求,我们都知道spring MVC是不能直接跳页面的。

    需要配置视图解析器,通过返回视图名再跳转到相应得JSP页面。

    即使这样,上一个页面得请求就在下一个页面得地址栏中显示了,不仅不美观数据也不安全,而且在操作订单数据时,按F5刷新页面有可能重新提交一次订单。

    因此这样得操作是及其不安全得。需要使用到重定向。

    我们只需要写一个重定向到带参数(视图名)的方法,每一个要跳转页面的方法都使用它,不需要一个一个的写。如下:

    /**
    * 重定向到请求成功的页面
    * @return
    */
    @RequestMapping("/resultJsp/{jspUrl}")
    public String resultJSP(@PathVariable("jspUrl") String jspUrl){
    return jspUrl;
    }

    调用:

    /**
    * 跳转到新闻列表
    * @param id
    * @return
    */
    @RequestMapping(value = "/static/toNewList/{id}")
    public String toNewList(@PathVariable("id") int id,
    HttpServletRequest request){
    List<News> newlist=new ArrayList<News>();
    switch (id){
    case 1:
    newlist=(List<News>)request.getSession().getAttribute("cardSals");
    break;
    case 2:
    newlist=(List<News>)request.getSession().getAttribute("recruitList");
    break;
    case 3:
    newlist=(List<News>)request.getSession().getAttribute("cooperationList");
    break;
    case 4:
    newlist=(List<News>)request.getSession().getAttribute("concatList");
    break;
    case 5:
    newlist=(List<News>)request.getSession().getAttribute("weList");
    break;
    }
    request.getSession().setAttribute("newlist",newlist);
    request.getSession().setAttribute("tid",id);
    return "redirect:/resultJsp/newList";
    }
    结果如下:

    如果有权限问题,需要在拦截器放过resultJsp开头的方法就可以了



  • 相关阅读:
    mySQL远程访问
    PHP安装amqp操作记录
    storm与daemontools安装详解
    centos时间同步问题
    nf_conntrack: table full, dropping packet 解决
    rabbitmq主从搭建
    jsonp
    django 整理二
    django中表单验证
    ajax
  • 原文地址:https://www.cnblogs.com/zeussbook/p/8963931.html
Copyright © 2020-2023  润新知