springBoot 后台方法进行重定向

  以下内容只是本人在开发中为加强记忆,而写

      在开发中,总是会遇到各种各样的跳转的问题,有些是需要在前端页面中直接执行,比如:添加新数据对象,返回上一级,查看详情这一类的,都可以通过在页面中通过a标签

或者是JS中的window.location.href(xxxx)这样的方式来实现,加入需要带参数的,就是一些比较常规的写法,用"?"后拼接参数来实现就好了.

比如:

复制代码
<a th:href="@{'方法路径?参数=' + ${参数值}}">操作名</a>//thyme  leaf 跳转写法
<a th:onclick="'javascript:JS方法名('+${JS方法参数值}+')'">操作名</a>//当参数值是通过thymeleaf框架获取到,且需要作为JS方法传递参数值时.
function deleteProject(projectId){
util.dialog.confirm("是否删除",1,function(){
window.location.href="/admin/resource/projectList/deleteProjectByProjectId?projectId="+projectId;
},function(){
return false;
});
}
//条件查询时,可作为传递参数方法使用
$("#searchButton").click(function() {
var projectType = $("#projectType").val();
var projectName = $("#projectName").val();
var param="?";
if(projectType > 0 && projectType != null) {
param += "projectType="+projectType
}
if(projectName.length > 0) {
param += "&projectName="+projectName;
}
window.location.href = "/admin/resource/projectList"+param;
});
 
复制代码

当然,上面条件查询时的写法是最基础的写法,还有一种方法是,可以把参数压缩动态传值.后台统一解析.但是个人感觉两者原理上差不多.就是这种写法比较麻烦.代码量比较大.

上面是JS页面,跳转的一些基本方法.

后台页面跳转,也就是重定向,记得用JSP---servlet的时,可以用response.sendRedrict(xxxx);的方式,可以完成重定向.可是那样每个需要重定向的方法中都需要写那些生命代码.

这里也是从网上找到几个适用的方法,来记录一下:

  1.直接返回值中加重定向:"redirect:要访问的网址";

public String updateOrAddProject() {
   return "redirect:要访问的相对网址或绝对网址?参数名="+参数值;
}

  2.适用modelAndView对象来进行,

 public ModelAndView findProjectPage() {
        ModelAndView modelAndView = new ModelAndView(需要跳转的页面路径);
        XXXXXXX
        return modelAndView;
    }

  3.就是继承HttpServlet类,声明HttpServletResponse 来完成后台的重定向.

posted @   每天学习1点点  阅读(72848)  评论(0编辑  收藏  举报
编辑推荐:
· 开发者必知的日志记录最佳实践
· SQL Server 2025 AI相关能力初探
· Linux系列:如何用 C#调用 C方法造成内存泄露
· AI与.NET技术实操系列(二):开始使用ML.NET
· 记一次.NET内存居高不下排查解决与启示
阅读排行:
· 被坑几百块钱后,我竟然真的恢复了删除的微信聊天记录!
· 没有Manus邀请码?试试免邀请码的MGX或者开源的OpenManus吧
· 【自荐】一款简洁、开源的在线白板工具 Drawnix
· 园子的第一款AI主题卫衣上架——"HELLO! HOW CAN I ASSIST YOU TODAY
· Docker 太简单,K8s 太复杂?w7panel 让容器管理更轻松!
点击右上角即可分享
微信分享提示