java小概念(一)

GET和POST方法

Spring Boot框架

在Spring Boot框架中,GET和POST方法都是HTTP协议定义的一种请求方法,它们的主要区别在于数据的传输方式和用途。

  1. GET方法:
    GET方法通常用于从服务器获取或查询信息。在GET请求中,请求的数据会附加在URL之后,以?符号分隔。例如,http://example.com/api/data?id=123。GET请求的数据是可见的,因为它们显示在URL中。GET请求通常被用于简单的查询或获取信息,但不适合传输敏感或大量数据,因为这些数据可能会被记录或缓存。
  2. POST方法:
    POST方法用于向服务器发送数据。与GET请求不同,POST请求将数据包含在请求的主体中,而不是URL中。这些数据可以是表单的输入、JSON或其他格式。POST请求的数据是不可见的,不会显示在URL中。POST请求通常用于提交表单、上传文件或发送敏感数据。

在Spring Boot中,你可以使用@GetMapping和@PostMapping注解来分别表示GET和POST请求的处理方法。例如:

@RestController
public class MyController {
 
    @GetMapping("/api/data")
    public String getData() {
        // 处理GET请求并返回数据
    }
 
    @PostMapping("/api/data")
    public String postData(@RequestBody String data) {
        // 处理POST请求并接收数据
    }
}

在上面的示例中,@GetMapping注解用于处理GET请求,不需要使用@RequestBody注解来接收请求主体中的数据。而@PostMapping注解用于处理POST请求,需要使用@RequestBody注解来接收请求主体中的数据。

Servlet

在Servlet中,GET和POST方法都是HTTP协议定义的一种请求方法,它们的主要区别在于数据的传输方式和用途。

  1. GET方法:
    GET方法通常用于从服务器获取或查询信息。在GET请求中,请求的数据会附加在URL之后,以?符号分隔。GET请求的数据是可见的,因为它们显示在URL中。GET请求通常被用于简单的查询或获取信息,但不适合传输敏感或大量数据,因为这些数据可能会被记录或缓存。
  2. POST方法:
    POST方法用于向服务器发送数据。与GET请求不同,POST请求将数据包含在请求的主体中,而不是URL中。这些数据可以是表单的输入、JSON或其他格式。POST请求的数据是不可见的,不会显示在URL中。POST请求通常用于提交表单、上传文件或发送敏感数据。

在Servlet中,你可以使用doGet()和doPost()方法来分别处理GET和POST请求。例如:

public class MyServlet extends HttpServlet {
 
    protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
        // 处理GET请求
    }
 
    protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
        // 处理POST请求
    }
}

在上面的示例中,doGet()方法用于处理GET请求,而doPost()方法用于处理POST请求。注意,在处理POST请求时,你需要从request对象中获取请求主体中的数据。

请求转发和重定向

请求转发和重定向是两种常见的网页跳转方法,它们在实现方式和效果上有一些区别。

请求转发(Request Forwarding)是服务器端跳转,它只产生一次请求,客户端请求到达服务器之后中会发生一次转发,之后服务器才将结果发送到客户端。这个过程在客户端看来就像是直接访问了目标页面,而不知道中间有过一次转发的操作。

重定向(Redirect)是客户端跳转,它会产生两次请求。首先发一个response到浏览器,浏览器收到这个response后再发一个request到服务器,服务器接收后发新的response给浏览器。当使用重定向时,浏览器中所显示的URL会变成新资源的URL。因为浏览器还得发出一个新的请求,所以重定向的速度比转发慢。同时,由于重定向方式产生了一个新的请求,所以经过一次重定向后,原request内的信息将无法使用。

总的来说,请求转发和重定向的主要区别在于:

  1. 转发是服务器行为,重定向是客户端行为。
  2. 转发只产生一次请求,重定向产生两次请求。
  3. 转发是浏览器上网址不变,重定向是浏览器上网址改变。
  4. 转发速度要快于重定向。

网络编程

image-20231019193457557

image-20231019193607869

image-20231019194101053

image-20231019211711467

![image-20231024231638921](https://s2.loli.net/2023/10/24/UyXacVSKtG1prqI.png

  • 22
    点赞
  • 22
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值