Spring Boot系列(5)——Restful CURD注意事项

〇、什么是RESTful风格

  RESTful不是一种技术手段,而是一套设计规范。在RESTful风格中,把网络中的一个实体抽象成一个“资源”,用URI去代表“资源”,。

  1.基本规范:

  (1)URI中不包含动词,每一个URI代表一种资源;

  (2)客户端和服务器之间,传递资源的表现形式;

  (3)客户端通过四个HTTP动词(GET/POST/PUT/DELETE),对服务器端资源进行操作。

  2.具体可参考:

  理解RESTful架构RESTful API设计指南

一、PUT和DELETE的使用

  1.说明

  依据RESTful风格,利用HTTP的四个请求区分对资源的CRUD操作。其中GET请求表示“获取”;POST请求表示“添加”;PUT请求表示“修改”;DELETE请求表示“删除”。

  而在html代码form标签的method属性中,仅有GET和POST两种选择,当我们需要使用PUT和DELETE请求,则需要做额外的工作。

  2.使用PUT/DELETE的步骤

  (1)在form标签设置method属性值为POST,并在表单中加入一个额外的文本框:

<input type="hidden" name="_method" value="DELETE" >

  (2)在Controller方法上,添加对应的注解:

  其中@DeleteMapping(...)相当于  @RequestMapping(value = "...", method = RequestMethod.DELETE)

1     @DeleteMapping("/emp/{id}")
2     public String deleteEmp(@PathVariable("id") Integer id){
3         employeeDao.delete(id);
4         return "redirect:/emps";
5     }

  (3)起作用过程:

  Spring MVC中有HiddenHttpMehodFilter类,是一个过滤器(SpringBoot已经默认配置好了)。该过滤器可以坚持表单中是否为POST请求,若为POST请求又是否有_method参数,若有则按照参数更改请求方式。

  

二、redirect与forward区别

  (1)从地址栏显示来说:forward是服务器内部重定向,客户端浏览器的网址不会发生变化;redirect发生一个状态码,告诉服务器去重新请求那个网址,显示的的新的网址。

  (2)数据共享:在定向过程中forward使用的是同一个request,可以共享;redirect不可以。

  (3)本质上说:forward转发是服务器上的行为,而redirect是客户端行为。

  (4)http请求次数:forward只有一次,redirect两次。

原文地址:https://www.cnblogs.com/Drajun/p/12239167.html

时间: 2024-10-11 07:22:27

Spring Boot系列(5)——Restful CURD注意事项的相关文章

Java微服务实践—Spring Boot系列

Java微服务实践-Spring Boot系列网盘地址:https://pan.baidu.com/s/1aMqPO4pXLeXDHvRuze-JWw 密码: j62z备用地址(腾讯微云):https://share.weiyun.com/c74335d7e383158ee3c4aaf193d471ed 密码:r5gqsk 原文地址:http://blog.51cto.com/12218470/2088359

spring boot系列(五)spring boot 配置spring data jpa (查询方法)

接着上面spring boot系列(四)spring boot 配置spring data jpa 保存修改方法继续做查询的测试: 1 创建UserInfo实体类,代码和https://www.cnblogs.com/kxm87/p/9273555.html中的一样. 2 创建数据库操作类相当于dao层,主要创建一个接口UserRepository,继承JpaRepository接口即可.本代码中主要都是自定义方法. 使用findXX 或者countXX(这两个不用编写sql,jpa会自动生成)

SpringBoot实战(十)之使用Spring Boot Actuator构建RESTful Web服务

一.导入依赖 <?xml version="1.0" encoding="UTF-8"?> <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.

Spring Boot系列——如何集成Log4j2

上篇<Spring Boot系列--日志配置>介绍了Spring Boot如何进行日志配置,日志系统用的是Spring Boot默认的LogBack. 事实上,除了使用默认的LogBack,Spring Boot还可以使用Log4j.Log42等作为自己的日志系统.今天就那Log4j2来举例,说明Spring Boot是如何集成其他日志系统的. 添加jar包依赖 上篇提到过,Spring Boot默认使用LogBack,但是我们没有看到显示依赖的jar包,其实是因为所在的jar包spring-

Spring Boot Hello World (restful接口)例子

Spring Boot 集成教程 Spring Boot 介绍 Spring Boot 开发环境搭建(Eclipse) Spring Boot Hello World (restful接口)例子 spring boot 连接Mysql spring boot配置druid连接池连接mysql spring boot集成mybatis(1) spring boot集成mybatis(2) – 使用pagehelper实现分页 spring boot集成mybatis(3) – mybatis ge

[译]Spring Boot 构建一个RESTful Web服务

翻译地址:https://spring.io/guides/gs/rest-service/ 构建一个RESTful Web服务 本指南将指导您完成使用spring创建一个“hello world”RESTful Web服务的过程. 你将会构建什么 您将构建一个将接受HTTP GET请求的服务: 您将构建一个将接受HTTP GET请求的服务: http://localhost:8080/greeting 1 1 并且使用JSON的形式进行响应: {"id":1,"conten

Spring Boot示例 - 1. 使用Spring Boot Actuator构建RESTful web service

一.概述 Spring Boot Actuator是Spring Boot的子项目.使用它无需特别配置,即可为应用增加一些生产级别的服务.本教程展示使用Eclipse + Maven来从零开始构建一个RESTful的应用. 该应用作用是访问http://localhost:8080/fuck?name=xxx,会返回json字符串,并且访问http://localhost:8080/metrics 可以看到应用堆的一些信息. 什么是Spring Boot Actuator? Actuator是个

Spring Boot系列(一) Spring Boot介绍和基础POM文件

Spring Boot是由Pivotal团队提供的全新框架,其设计目的是用来简化新Spring应用的初始搭建以及开发过程.该框架使用了特定的方式来进行配置,从而使开发人员不再需要定义样板化的配置.通过这种方式,Boot致力于在蓬勃发展的快速应用开发领域(rapid application development)成为领导者. Spring Boot的特点 1. 创建独立的Spring应用程序 2. 直接嵌入Tomcat,Jetty或Undertow,无需部署WAR文件 3. 提供推荐的基础POM

Spring Boot系列教程八: Mybatis使用分页插件PageHelper

一.前言 上篇博客中介绍了spring boot集成mybatis的方法,基于上篇文章这里主要介绍如何使用分页插件PageHelper.在MyBatis中提供了拦截器接口,我们可以使用PageHelp最为一个插件装入到SqlSessionFactory,实现拦截器功能. 二.实现 pom.xml文件中添加依赖包 1 <dependency> 2 <groupId>com.github.pagehelper</groupId> 3 <artifactId>pa