• C/S架构:单独客户端

快速入门

  • 创建springboot工程,勾选web开发依赖
  • 定义请求处理类helloController,定义请求方法
  • 运行启动类,测试

http协议

浏览器与服务器之间数据传输的规则

请求协议

  • 请求行
  • 请求头
  • 请求体

HttpServletRequest

package com.itheima;
 
 
import jakarta.servlet.http.HttpServletRequest;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
 
@RestController
public class RequestController {
    @RequestMapping("/request")
    public String request(HttpServletRequest request ){
        String method = request.getMethod();
        System.out.println( "method : "+ method);
 
        //获取请求url地址
        String url = request.getRequestURL().toString();// http://localhost:8080/request
        System.out.println("url : "+ url);
        String uri = request.getRequestURI();// /request
        System.out.println("uri : "+ uri);
 
        //获取请求协议
        String protocol = request.getProtocol();// HTTP/1.1
        System.out.println("protocol : "+ protocol);
 
         //获取请求参数
        String name = request.getParameter( "name");
        System.out.println("name : "+ name);
 
        //获取请求头
         String header = request.getHeader("Accept");
         System.out.println("header : "+ header);
        return "Received request with method: " + method + ", name: " + name;
    }
}
 

响应协议

HttpServletResponse

开发Web程序

springboot-web-01

分层解藕

dao : 数据访问层(DataAccessObject)(持久层)负责数据访问操作,增删改查 service : 业务逻辑层 controller : 控制层,接受前端发送的请求,处理并响应数据

分层解藕

  • IOC

@Component @Controller @Service @Repository

  • DI

多个相同类型的bean时,可用 1️⃣@Primary 2️⃣@Qualifier(“指定bean小写”) 3️⃣@Resource