SpringBoot基础

102 阅读4分钟

SpringBoot基础

SpringBoot特点:简化配置,快速开发

SpringBootWeb入门

需求

基于SpringBoot的方式开发一个web应用,浏览器发起请求/hello后,给浏览器返回字符串 “Hello World ~”。

开发步骤

创建SpringBoot工程

1)创建SpringBoot工程

image-20231021100405581.png 2)勾选web开发相关依赖。

image-20231021100727169.png

定义请求处理类

在com.itheima这个包下创建一个子包controller

然后在controller包下新建一个类:HelloController

在该类中输入如下代码

package com.itheima.controller;
import org.springframework.web.bind.annotation.*;
@RestController//声明该类是一个控制器,并且其方法的返回值将直接作为HTTP响应体
public class HelloController {
@RequestMapping("/hello") // 声明该方法用于处理URL路径为"/hello"的HTTP请求
public String hello(){// 定义一个名为"hello"的方法
System.out.println("Hello World ~");// 在控制台打印"Hello World ~"消息
return "Hello World ~";// 返回字符串"Hello World ~"作为HTTP响应体
 }
} 

运行测试

运行SpringBoot自动生成的引导类main-java下的启动类--ApplicationTests

在控制台会打印端口号,在浏览器输入 http://localhost:8080/hello,则会跳转到对应页面,页面出现Hello World ~

web分析

image-20231021103049194.png 网络三要素

1)ip:网络中计算机的唯一标识

2)端口:计算机中运行程序的唯一标识

3)协议:网络中计算机之间交互的规则

浏览器和服务器两端进行数据交互,使用什么http协议

HTTP协议

介绍

HTTP:Hyper Text Transfer Protocol(超文本传输协议),规定了浏览器与服务器之间数据传输的规则。

  • http是互联网上应用最为广泛的一种网络协议
  • http协议要求:浏览器在向服务器发送请求数据时,或是服务器在向浏览器发送响应数据时,都必须按照固定的格式进行数据传输
  • 分为请求协议和响应协议

特点

  • 基于TCP协议:TCP是一种面向连接的(建立连接之前是需要经过三次握手)、可靠的、基于字节流的传输层通信协议,在数据传输方面更安全
  • 基于请求-响应模型:一次请求对应一次响应(先请求后响应)
  • HTTP协议是无状态协议: 对于数据没有记忆能力。每次请求-响应都是独立的

HTTP-请求协议

概述

浏览器将数据以请求格式发送到服务器

包括:请求行,请求头,请求体

方式1 GET

image-20231021111009348.png

  • 请求行:HTTP请求中的第一行数据。由:请求方式 、资源路径 、协议/版本组成(之间使用空格分隔)

    1)资源路径又分为请求路径和请求参数

    2)请求路径和请求参数之间使用 ? 连接

    3)多个多个请求参数之间使用 & 连接

  • 请求头: 第二行开始,上图黄色部分内容就是请求头。格式为key: value形式

    http是个无状态的协议,所以在请求头设置浏览器的一些自身信息和想要响应的形式。这样服务器在收到信息后,就可以知道是谁,想干什么了

  • 请求体:存储请求参数

    GET请求参数在请求行中,故没有请求体

方式2 POST

image-20231021112215551.png

二者区别

image-20231021112308275.png

HTTP响应协议

概述

服务器将数据以响应格式返回给浏览器

包括:响应行,响应头,响应体

image-20231021113208911.png

响应状态码

image-20231021113528531.png 需要认识的状态码

  • 200 ok 客户端请求成功
  • 404 Not Found 请求资源不存在
  • 500 Internal Server Error 服务端发生不可预期的错误

web服务器-tomcat

服务器概述

image-20231021164930275.png

web服务器

Web服务器是一个应用程序(软件),对HTTP协议的操作进行封装,使得程序员不必直接对协议进行操作 (不用程序员自己写代码去解析http协议规则),让Web开发更加便捷。主要功能是"提供网上信息浏览服务"。

Web服务器是安装在服务器端的一款软件,将来我们把自己写的Web项目部署到Tomcat服务器软件中, 当Web服务器软件启动后,部署在Web服务器软件中的页面就可以直接通过浏览器来访问了

Tomcat

下载与安装

官网下载:Apache Tomcat® - Apache Tomcat 9 Software Downloads

目录文件

image-20231021170305459.png

启动与关闭
启动

双击tomcat解压目录/bin/startup.bat文件即可启动tomcat

注意事项 :Tomcat启动的过程中,遇到控制台有中文乱码时,可以通常修改 conf/logging.prooperties文件解决 image-20231021170508680.png

关闭

1、强制关闭:直接x掉Tomcat窗口(不建议)

2、正常关闭:bin\shutdown.bat

3、正常关闭:在Tomcat启动窗口中按下 Ctrl+C

更改端口号

修改 conf/server.xml文件

image-20231021170702545.png

SpringBoot入门解析
Spring官方骨架

我们可以通过访问:start.spring.io/ ,进入到官方骨架页面

内嵌Tomcat

在我们的idea创建的SpringBoot中,引入了web运行环境(也就是引入spring-boot-starterweb起步依赖),其内部已经集成了内置的Tomcat服务器