解决SpringBoot的@DeleteMapping注解的方法不被调用问题

 更新时间:2023年01月12日 10:14:49   作者:zavier的乌托邦  
这篇文章主要介绍了解决SpringBoot的@DeleteMapping注解的方法不被调用问题,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教

SpringBoot的@DeleteMapping注解的方法不被调用

1、前端代码

<!--1 给当前按钮绑定样式deleteBtn
    2 给按钮绑定自定义属性-->
<button th:attr="del_uri=@{/emp/}+${emp.id}" class="btn btn-sm btn-danger deleteBtn"         
  type="submit">删除</button>
 
<!--创建一个表单-->
<form id="delFormBtn" method="post">
    <input type="hidden" name="_method" value="delete">
</form>
 
<script>
        // 按钮点击时调用该方法
	$(".deleteBtn").click(function(){
	//绑定属性提交表单
	$("#delFormBtn").attr("action",$(this).attr("del_uri")).submit();
	return false;
    });
</script>

2、服务端代码

    @DeleteMapping("/emp/{id}")
    public String delete(@PathVariable("id") Integer id){
        employeeDao.delete(id);
        return "redirect:/emps";
    }

3、Spring boot源码(重点)

3.1、matchIfMissing的用法:

(1)如果配置文件中没有配置 spring.mvc.hiddenmethod.filter.enabled 的属性,并且matchIfMissing = false,那么不符合加载 hiddenHttpMethodFilter()的条件,反之matchIfMissing = true,符合加载hiddenHttpMethodFilter()的条件。

(2)如果配置文件中配置了 spring.mvc.hiddenmethod.filter.enabled = false,不管matchIfMissing = false 或者 matchIfMissing = true,都不符合加载hiddenHttpMethodFilter()的条件。

(3)如果配置文件中配置了 spring.mvc.hiddenmethod.filter.enabled = true ,不管matchIfMissing = false 或者 matchIfMissing = true,都符合加载hiddenHttpMethodFilter()的条件。

4、配置文件

在application.yml或者application.properties中加入spring.mvc.hiddenmethod.filter.enabled = true即可。

SpringBoot开发中常用的注解

@ApiOperation和@ApiParam为添加的API相关注解

参数说明如下

@ApiOperation(value = “接口说明”, httpMethod = “接口请求方式”, response = “接口返回参数类型”, notes = “接口发布说明”);其他参数可参考源码;

@ApiParam(required = “是否必须参数”, name = “参数名称”, value = “参数具体描述”)

@Autowired

  • 这个注解的作用是将其他的类,接口引入,类似于之前的类的初始化等,用这个注解,类中或接口的方法就可以直接调用了。

@RequestMapping

  • 当前台界面调用Controller处理数据时候告诉控制器怎么操作
  • 作用:URL映射。

@GetMapping

  • @RequestMapping(method = RequestMethod.GET)的简写
  • 作用:对应查询,表明是一个查询URL映射

@PostMapping

  • @RequestMapping(method = RequestMethod.POST)的简写
  • 作用:对应增加,表明是一个增加URL映射

@PutMapping

  • @RequestMapping(method = RequestMethod.PUT)的简写
  • 作用:对应更新,表明是一个更新URL映射

@DeleteMapping

  • @RequestMapping(method = RequestMethod.DELETE)的简写
  • 作用:对应删除,表明是一个删除URL映射

总结

以上为个人经验,希望能给大家一个参考,也希望大家多多支持脚本之家。

相关文章

  • Java实现的权重算法(按权重展现广告)

    Java实现的权重算法(按权重展现广告)

    这篇文章主要介绍了Java实现的权重算法(按权重展现广告),本文讲解了算法实现原理和实现代码,需要的朋友可以参考下
    2015-04-04
  • Eclipse快捷键使用小结

    Eclipse快捷键使用小结

    Eclipse是用java的同行必不可少的工具,我总结了一下它的快捷键,太常用的ctrl+单击、ctrl+shift+F、Ctrl+1等我就不细说了,主要是方便查看。下边小编就详细的为大家介绍一下
    2013-07-07
  • Java 动态编译在项目中的实践分享

    Java 动态编译在项目中的实践分享

    在 Java 中,动态编译是指在运行时动态地编译 Java 源代码,生成字节码,并加载到 JVM 中执行,动态编译可以用于实现动态代码生成、动态加载、插件化等功能,本文将给大家分享一下Java 动态编译在项目中的实践,感兴趣的同学跟着小编一起来看看吧
    2023-07-07
  • Java延时的3种实现方法举例

    Java延时的3种实现方法举例

    这篇文章主要给大家介绍了关于Java延时的3种实现方法举例,java开发中常会用到延时任务,文中通过实例代码介绍的非常详细,对大家的学习具有一定参考借鉴价值,需要的朋友可以参考下
    2023-07-07
  • hibernate多表操作实例代码

    hibernate多表操作实例代码

    这篇文章主要介绍了hibernate多表操作实例代码,分享了相关代码示例,小编觉得还是挺不错的,具有一定借鉴价值,需要的朋友可以参考下
    2018-02-02
  • Maven方式构建SpringBoot项目的实现步骤(图文)

    Maven方式构建SpringBoot项目的实现步骤(图文)

    Maven是一个强大的项目管理工具,可以帮助您轻松地构建和管理Spring Boot应用程序,本文主要介绍了Maven方式构建SpringBoot项目的实现步骤,具有一定的参考价值,感兴趣的可以了解一下
    2023-09-09
  • Java打开浏览器访问指定页面的实现方法

    Java打开浏览器访问指定页面的实现方法

    在开发Java应用程序时,有时需要从程序中启动默认的Web浏览器并访问特定的网页,这在实现帮助文档链接、用户指南或在线资源导航等功能时非常有用,本文将介绍如何使用Java代码来实现这一功能,需要的朋友可以参考下
    2025-01-01
  • SpringCloud中的熔断监控HystrixDashboard和Turbine示例详解

    SpringCloud中的熔断监控HystrixDashboard和Turbine示例详解

    HystrixDashboard是用于实时监控Hystrix性能的工具,展示请求响应时间和成功率等数据,本文介绍了如何配置和使用HystrixDashboard和Turbine进行熔断监控,包括依赖添加、启动类配置和测试流程,感兴趣的朋友一起看看吧
    2024-09-09
  • SSH框架网上商城项目第3战之使用EasyUI搭建后台页面框架

    SSH框架网上商城项目第3战之使用EasyUI搭建后台页面框架

    SSH框架网上商城项目第3战之使用EasyUI搭建后台页面框架,讨论两种搭建方式:基于frameset和基于easyUI,感兴趣的小伙伴们可以参考一下
    2016-05-05
  • Java Iterator接口实现代码解析

    Java Iterator接口实现代码解析

    这篇文章主要介绍了Java Iterator接口实现代码解析,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下
    2020-05-05

最新评论