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;		
		}

前端显示:

控制台显示:

相关推荐
学java的小菜鸟啊7 分钟前
第五章 网络编程 TCP/UDP/Socket
java·开发语言·网络·数据结构·网络协议·tcp/ip·udp
zheeez10 分钟前
微服务注册中⼼2
java·微服务·nacos·架构
程序员-珍14 分钟前
SpringBoot v2.6.13 整合 swagger
java·spring boot·后端
徐*红22 分钟前
springboot使用minio(8.5.11)
java·spring boot·spring
聆听HJ22 分钟前
java 解析excel
java·开发语言·excel
海里真的有鱼23 分钟前
好文推荐-架构
后端
AntDreamer26 分钟前
在实际开发中,如何根据项目需求调整 RecyclerView 的缓存策略?
android·java·缓存·面试·性能优化·kotlin
java_heartLake31 分钟前
设计模式之建造者模式
java·设计模式·建造者模式
G皮T31 分钟前
【设计模式】创建型模式(四):建造者模式
java·设计模式·编程·建造者模式·builder·建造者
niceffking35 分钟前
JVM HotSpot 虚拟机: 对象的创建, 内存布局和访问定位
java·jvm