目录
一、SpringBoot介绍
我们可以打开Spring的官网(Spring | Home),去看一下Spring的简介:Spring makes Java simple。
Spring发展到今天已经形成了一种开发生态圈,Spring提供了若干个子项目,每个项目用于完成特定的功能。而我们在项目开发时,一般会偏向于选择这一套spring家族的技术,来解决对应领域的问题,那我们称这一套技术为spring全家桶。
而Spring家族旗下这么多的技术,最基础、最核心的是 SpringFramework。其他的spring家族的技术,都是基于SpringFramework的,SpringFramework中提供很多实用功能,如:依赖注入、事务管理、web开发支持、数据访问、消息服务等等。
Spring Boot 可以帮助我们非常快速的构建应用程序、简化开发、提高效率 。
二、SpringBootWeb快速入门
注意:SpringBoot最新版本是3.x;目前应用最多的是SpringBoot2.x
-
创建SpringBoot工程项目
添加SpringBoot相关的依赖坐标
创建一个引导类(启动类),里边要有main方法==>几乎固定不变的写法
-
定义HelloController类,添加方法hello,并添加注解
类上加@RestController注解
在hello方法上加
@GetMapping("/hello")
-
启动服务,测试
创建
1.创建方式一:上官网Spring Initializr
2.创建方式二:在idea里创建,必须联网
3.创建方式三:创建一个maven项目,在pom文件加载以下坐标,在添加启动类
修改pom.xml,添加SpringBoot版本锁定,并添加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.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0</modelVersion>
<groupId>org.example</groupId>
<artifactId>web03-springboot</artifactId>
<version>1.0-SNAPSHOT</version>
<!--锁定SpringBoot的版本-->
<parent>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-parent</artifactId>
<version>2.7.3</version>
</parent>
<properties>
<maven.compiler.source>11</maven.compiler.source>
<maven.compiler.target>11</maven.compiler.target>
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
</properties>
<!--添加web起步依赖,这个依赖里提供了web服务端开发必须的jar包-->
<dependencies>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-web</artifactId>
</dependency>
</dependencies>
</project>
创建引导类(也就是启动类)
package com.itheima;
import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
@SpringBootApplication
public class Demo01Application {
public static void main(String[] args) {
SpringApplication.run(Demo01Application.class, args);
}
}
定义请求处理类
package com.itheima.controller;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.RestController;
@RestController
public class HelloController {
@GetMapping("/hello")
public String hello(){
System.out.println("HelloController的hello方法运行了");
return "hello, world";
}
}
运行测试
运行刚刚创建的引导类,启动服务
打开浏览器,输入 http://localhost:8080/hello
三、Web分析
客户端输入网址并回车:http://192.168.100.11:8080/hello
,表示向192.168.100.11计算机上的8080端口对应的程序,加载/hello对应的资源
-
通过IP地址
192.168.100.11
定位到网络上的一台计算机 -
通过端口号
8080
找到计算机上运行的程序 -
/hello
是请求资源路径-
资源:计算机上的一切文件都是资源
-
web资源:通过网络可以访问到的资源(通常是指存放在服务器上的数据)
-
服务器处理客户端的请求:可以理解为ServerSocket
-
接收到浏览器发送的信息(如:/hello)
-
在服务器上找到/hello对应的资源数据
-
把资源返回给浏览器