• SpringMVC跳转


    转发:

    1:添加成功跳转到成功页面,给出提示,失败跳转到失败页面  ---- jsp

    2:添加成功后,跳转到查询的controller中  -- 另外一个程序,添加完成之后,执行查询所有的操作,跳转到所有的用户列表

    3:在查询的controller中是否能够获取第一个controller中传递的参数

    重定向:

    1:添加成功之后重定向到页面,失败后也是定向到失败页面

    2:使用重定向,跳转到controller中的其他方法

    3:重定向跳转到第二个controller中,获取参数

    1:转发到页面

    注意:springmvc默认使用的就是转发技术,

    完整的写法是:return “forward:/xx.jsp”; / - 指的是web目录,一层一层往下查找,注意:此时不走springmvc的试图解析器。

    如果希望返回时走试图解析器的话,直接写一个简单的字符串即可,如:return “hello”;此时就会做视图的拼接。

    2:转发到controller

    转发到其他的方法:

    完整的写法为return forward:/类上的路径/方法上的路径.do; 这个是通用的。

    如果调用方法和目标方法在同一个类中,则可以简化写法:return “方法上的路径.do”;

    需求:添加一个用户信息,添加完成之后,访问查询

    所有的方法,并且将刚刚添加的用户信息,添加到所有

    用户信息的集合中,展示在页面上。

    查询所有用户信息不接受参数。

    3:转发携带参数

    可以使用request对象来传递参数

    2:重定向

    1:重定向到页面

    语法 : return redirect:/xxx.jsp

    注意:重定向也需要 /

    需求:用户登录错误之后重定向到登录页面

    2:重定向到controller

    return “redirect:/类上的requestMapping / 方法上的requestMapping ”

    需求:登录成功之后,重定向到另外一个controller中的查询所有用户的方法,返回所有用户的列表

    3:重定向携带参数问题

    1:可以使用url的拼接, 在url后面通过?name=value的方式进行拼接

    2:使用session传递具体的值, 在一个方法内存储在session的内容,可以在另外一个方法中获取

    3:使用redirectAttributes 这个接口,在接受方法参数的前面要使用@ModelAttribute("key")来接受

    3:springmvc两种跳转方式总结

    转发:

    转发到页面:return “forward:/具体的页面.jsp”; 如果配置了视图解析器的话同时页面也在指定的位置,return “视图名称”;

    转发到方法:return “forward:/类上的路径/方法上的路径.do”, 如果目标方法是在一个类中的,可以直接写方法上的路径,return “queryUsers.do”;

    参数携带:request,sesssion

    重定向:

    重定向到页面: return “redirect:/具体的页面.jsp”, / 指的是web文件夹

    重定向到方法: return “redirect:/类上的路径/方法上路径”;

    参数的携带:1,url的拼接,2:session, 3:RedirectAttributes,在接受的时候要使用@ModelAttribute("key")

    2:响应时返回json

    可以将java对象转换为json对象,在方法上添加@ResponseBody 注解即可

    作用:java对象 --- 》 json对象

       Java集合  -- 》 json数组

    补充:如果前端传递过来的是json对象呢

    Json -- > java 对象 需要使用一个注解 @RequestBody

    一般都需要引入第三方的依赖

    注意 :

    1. 一般手动构建的是js对象,在前端中{}表示对象,但js对象不是json需要进行转换
    2. 将js对象转换为json数据使用 JSON.stringify(user);
    3. 使用ajax发送json数据的时候,只能使用post请求,同时需要指定类型为json

     

  • 相关阅读:
    Linux命令:stat命令
    【k8s】集群搭建篇
    4 vCPU 实例达成 100 万 JSON API 请求/秒的优化实践
    2022年9月月赛乙组 T3.棋盘问题
    springboot323基于Java的美妆购物网站的设计与实现
    大数据可视化模块竞赛Vue项目文件结构与注意事项
    【方法】如何取消ZIP压缩包的密码?
    AJAX基于XML的数据交换、XML和JSON的区别
    JSP webshell免杀——webshell免杀
    自建zerotier服务——实现更快速安全的远程连接
  • 原文地址:https://blog.csdn.net/skqpp1314/article/details/127950427