SpringBootWeb极速入门-实现一个简单的web页面(01)

Spring简介

Spring是一个开源的Java开发框架,其官网是 spring.io/

Spring提供了一系列的模块和功能,包括Spring MVCSpring BootSpring DataSpring FrameWork等,这些模块和功能可以帮助开发者快速构建高质量的、可扩展的应用程序。

在Spring的这些模块中,Spring FrameWork是所有spring的核心底层框架,所有模块几乎都依赖于此。

Spring Boot依赖于Spring FrameWork,其可以帮助我们非常快速的构建应用程序、简化开发、提高效率。

在Spring的官网中,构建一个java应用程序,官方首先推荐的就是使用Spring Boot

Spring Boot快速入门

需求案例

我们实现一个如下需求:

使用 SpringBoot 开发一个web应用,浏览器发起请求/hello后,给浏览器返回字符"Hello World~"

创建项目

打开编译器,点击File->New->Project->Spring Initializr,然后进行项目的一些基本配置:

Language选择java,Type选择Maven,Group组织名一般是项目的域名反写,Artifact模块名就起Spring_Boot_Web吧,java版本我们选择和JDK对应的版本,如稳定的8版本,填写完毕我们点击Next

接下来,我们需要选择Spring Web开发相关的依赖,Spring Boot版本我们选择2.7.17,防止版本太高出现一些问题。

最后点击CREATE等待项目联网创建(大约2min)

项目结构简析

项目的依赖下载完毕后,其项目结构如图

我们先删除.mvn、.gitignore、HELP.md、mvnm及mvnm.cmd这些没有用的文件,让项目结构清爽一些。

启动类

spring项目中的main文件夹内的SpringBootWebApplication是启动类,用于启动springg工程。

resources文件夹

resources文件夹用于存放项目的静态资源文件,例如HTML、CSS、JavaScript、图片等。默认情况下,Spring Boot会自动加载该文件夹下的静态资源文件。

pom文件

pom.xml文件是一个重要的配置文件,用于管理项目的依赖项构建配置。它基于Maven构建工具,可以帮助我们自动化构建和管理项目。

xml 复制代码
<?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 https://maven.apache.org/xsd/maven-4.0.0.xsd">
    <!--    <modelVersion>:指定了POM的版本,这里为4.0.0。-->
    <modelVersion>4.0.0</modelVersion>
    <!--    <parent>:定义了该项目的父项目。这里,父项目的groupId是org.springframework.boot,artifactId是spring-boot-starter-parent,version是2.7.17。-->
    <parent>
        <groupId>org.springframework.boot</groupId>
        <artifactId>spring-boot-starter-parent</artifactId>
        <version>2.7.17</version>
        <relativePath/> <!-- lookup parent from repository -->
    </parent>
    <!--    定义了项目的信息-->
    <groupId>com.shixiaoshi</groupId>
    <artifactId>Spring_Boot_Web</artifactId>
    <version>0.0.1-SNAPSHOT</version>
    <name>Spring_Boot_Web</name>
    <description>Spring_Boot_Web</description>
    <!--    项目的Java版本为Java 8。-->
    <properties>
        <java.version>1.8</java.version>
    </properties>
    <!--    定义了项目的依赖项-->
    <dependencies>
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-web</artifactId>
        </dependency>

        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-test</artifactId>
            <scope>test</scope>
        </dependency>
    </dependencies>
    <!--    定义了项目的构建配置。在这里,项目使用了一个名为spring-boot-maven-plugin的插件。-->
    <build>
        <plugins>
            <plugin>
                <groupId>org.springframework.boot</groupId>
                <artifactId>spring-boot-maven-plugin</artifactId>
                <version>2.3.0.RELEASE</version>
            </plugin>
        </plugins>
    </build>

</project>

异常处理:

如果spring-boot-maven-plugin飘红

添加如下代码刷新pom即可

xml 复制代码
<plugins>
  <plugin>
    <groupId>org.springframework.boot</groupId>
    <artifactId>spring-boot-maven-plugin</artifactId>
  + <version>2.3.0.RELEASE</version>
  </plugin>
</plugins>

使用代码实现需求

我们在启动类的平级目录下创建一个Hello类,键入如下代码

java 复制代码
package com.shixiaoshi.spring_boot_web;

//这两行代码导入了Spring框架的注解,用于映射HTTP请求和定义REST控制器。
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;

//这是一个注解,用于标识类作为REST控制器。在Spring Boot中,REST控制器类用于处理HTTP请求并返回HTTP响应。
@RestController
public class Hello {
    // 这是一个注解,用于映射HTTP请求到特定的方法。在这种情况下,它将映射到路径/hello的HTTP请求。
    @RequestMapping("/hello")
    // 路径/hello的HTTP请求到达时,这个方法将被调用。
    public String hello(){
        return "Hello World~";
    }
}

上述定义了一个Spring Boot Web应用程序,该应用程序有一个REST控制器类(Hello),当接收到路径为/hello的HTTP GET请求时,将返回"Hello World~"的字符串作为响应。

然后运行启动类SpringBootWebApplication

控制台出现打印的日志时,我们打开浏览器访问http://localhost:8080/hello

可见,我们的第一个Spring Web项目已经成功运行!

至此,我们就成功的使用Spring Boot创建了一个Spring Web的项目!

相关推荐
小游鱼KF1 分钟前
Spring学习前置知识
java·学习·spring
扎克begod5 分钟前
JAVA并发编程系列(9)CyclicBarrier循环屏障原理分析
java·开发语言·python
青灯文案16 分钟前
SpringBoot 项目统一 API 响应结果封装示例
java·spring boot·后端
我就是程序猿16 分钟前
tomcat的配置
java·tomcat
阳光阿盖尔22 分钟前
EasyExcel的基本使用——Java导入Excel数据
java·开发语言·excel
二十雨辰23 分钟前
[苍穹外卖]-12Apache POI入门与实战
java·spring boot·mybatis
程序员皮皮林24 分钟前
开源PDF工具 Apache PDFBox 认识及使用(知识点+案例)
java·pdf·开源·apache
蔚一24 分钟前
Java设计模式—面向对象设计原则(三) -----> 依赖倒转原则DIP(完整详解,附有代码+案例)
java·开发语言·设计模式·intellij-idea·依赖倒置原则
liang899930 分钟前
SpringSecurity原理解析(七):权限校验流程
java·开发语言
搁浅°87939 分钟前
IO文件拷贝
java·开发语言