Restful风格发送请求——使用SpringMVC进行Restful风格请求的接收

本文介绍了如何使用SpringMVC实现RESTful风格的HTTP请求处理,包括GET用于获取,POST用于添加,PUT用于更新,DELETE用于删除的语义规定,并强调了请求方式在区分不同操作中的关键作用。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

Restful只是一种发送http请求的风格,对请求的方式赋予其对应的语义,本质还是发送http请求
一般使用Restful风格发送请求的方式都是按照这一种规范来:

  • GET请求:用于获取
  • POST请求:用于添加
  • PUT请求:用于更新
  • DELETE请求:用于删除

注:这只是大家约定俗成的语法规则

使用SpringMVC进行Restful风格请求的接收

/**
* 写一个Controller类
*/
@RestController
@RequestMapping("/meeting")
public class MeetingController {

    @Autowired
    private MeetingService meetingService;
	
	/**
	 * /{id}: 它是请求的最后一个 / 后面的参数,{id}要和@PathVariable注解的值进行对应,否则无法获取到
	 * 例:http://localhost:8080/meeting/1
	 * 首先它的请求方式是GET才能进行匹配,id获取到就是1
	 * 在Restful风格中GET请求表示获取数据所以这一条请求就表示:获取id为1的Meeting对象
     * @param id
     * @return
	*/
	@GetMapper("/{id}")
	public R getMeeting(@PathVariable("id") Integer id) {
		return new R(200, "查询成功", meetingService.getMeetingById(id));
	}

	/**
	 * 表示新增,@RequestBody表示对json类型的请求参数进项封装
	 * 这里就是将请求的参数封装为一个Meeting对象
	 * @param meeting
     * @return
	*/
    @PostMapping
    public R save(@RequestBody Meeting meeting) {
        if (meetingService.save(meeting) == 1) {
            return new R(200, "添加成功");
        } else {
            return new R(202, "添加失败");
        }
    }

	/**
	 * 表示更新
	 * @param meeting
     * @return
	*/
    @PostMapping
    public R update(@RequestBody Meeting meeting) {
        if (meetingService.save(meeting) == 1) {
            return new R(200, "添加成功");
        } else {
            return new R(202, "添加失败");
        }
    }

	/**
	 * 表示删除对应id的数据
	 * @param id
     * @return
	*/
    @DeleteMapping("/{id}")
    public R del(@PathVariable("id") Integer id) {
        if (meetingService.deleteMeetingById(id) == 0) {
            return new R(201, "删除失败");
        } else {
            return new R(200, "删除成功");
        }
    }
}

注:在这个实例中新增和更新的url是一样的,获取和删除的url也是一样的,但是应为它们在进项发送时的方式不一样,从而会进入到对应请求方式的方法中

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值