restful请求风格的增删改查-----修改and删除

一、修改(和添加类似)

前端:

复制代码
<script type="text/javascript">
	function update(){
		//创建user对象
		var user = {
				id:$("#id").val(),
				username:$("#username").val(),
				password:$("#password").val()
		};
		//能正确获取输入框里的元素
		alert("id: " + user.id + ", username: " + user.username + ", password: " + user.password);
		
		$.ajax({
			url:"${pageContext.request.contextPath }/user",
			type:"post",
			//data表示发送的数据,将三个参数绑定到一起
	        data:JSON.stringify({ id: user.id, username: user.username, password: user.password }),
			//定义发送请求的数据格式为JSON字符串
			contentType:"application/json;charset=UTF-8",
			//成功响应结果
			success: function(data){
				if(data!=null){
					alert("您成功修改了编号为"+user.id+"的用户")
				}else{
					alert("修改出错了")
				}
			}
		});
	}
</script>

</head>
<body>
	<div class="container">
	  <form class="form">
	          编&nbsp;&nbsp;&nbsp; 号:<input type="text" name="id" id="id"><br>
      	用户名:<input type="text" name="username" id="username"><br>
      	密&nbsp;&nbsp;&nbsp; 码:<input type="password" name="password" id="password"><br>
        <input type="button" value="修改" class="btn btn-secondary" onclick="update()"><br>
	  </form>
	</div>
</body>

后端:

复制代码
    /*
	* 接受Restful风格的请求,其接受方式为post----修改操作
	*/
	@PostMapping(value="/user")
	@ResponseBody
	public User postUser(@RequestBody User user) 
	{
		//创建新用户
		Integer id = user.getId();
	    String username = user.getUsername();
	    String password = user.getPassword();
		//查看数据接收
		System.out.println("成功修改了id="+id+"的用户,用户名为"+username+",密码为"+password);
		
		return user;
	}

前端显示:

控制台显示:

二、删除(和查询类似)

前端:

复制代码
<script type="text/javascript">
	function del(){
		//获取输入的id
		var id = $("#number").val();
		alert(id)
		if(confirm("确定要删除吗?")){
			$.ajax({
				url:"${pageContext.request.contextPath }/user/"+id,
				type:"delete",
				//定义相应的数据格式为Json
				dataType:"json",
				//成功响应结果
				success:function(value){
						alert("成功删除用户"+id)
						location.reload() //页面刷新
				},
				error:function(){
				    	alert("删除出错了")
				    }
		     })
	   }else{
			alert("感谢手下留情")
		 }
	}
</script>

</head>
<body>
   <div class="container">
	  <form class="form">
	         编号:<input type="text" name="number" id="number"><br>
        <input type="button" value="删除" class="btn btn-danger" onclick="del()"><br>
	  </form>
    </div>
</body>

后端:

复制代码
	/*
	* 接受Restful风格的请求,其接受方式为delete----删除操作
	*/
	@DeleteMapping(value="/user/{id}")
	@ResponseBody
	public User deleteUser(@PathVariable("id") Integer id) {
		//查看数据接收
		System.out.println("成功删除了id="+id+"的用户");
		User user = new User();
		//模拟根据id查询到用户对象
		if(id!=null) {
			user.setId(null);
			user.setUsername("");
			user.setPassword(null);
		}
		return user;		
		}

前端显示:

控制台显示:

相关推荐
GetcharZp1 小时前
玩转 Linux 机器视觉:手把手带你搞定 Ubuntu 下海康工业相机 C++ SDK
后端
星星在线5 小时前
MusicFree:一个「All in One」的个人音乐服务器,让听歌回归简单
前端·后端
IT_陈寒5 小时前
Redis的SETNX并发问题让我加了三天班
前端·人工智能·后端
demo007x6 小时前
Docling 文档转换以及技术架构分析
前端·后端·程序员
NE_STOP7 小时前
Vide Coding--AI编程工具的选择
java
袋鱼不重7 小时前
我的神奇同事,AI 用多了居然写了个 Open In Codex
前端·后端·ai编程
用户8356290780517 小时前
使用 Python 操作 Word 内容控件
后端·python
像我这样帅的人丶你还7 小时前
啥? 前端也要会干Java?🛵🛵🛵
后端
Hommy887 小时前
【剪映小助手】添加贴纸接口(Add Sticker)
后端·github·剪映小助手·视频剪辑自动化·剪映api
码云数智-园园8 小时前
C++20 Modules 模块详解
java·开发语言·spring