【前端学java】SpringBootWeb极速入门-实现一个简单的web页面01

简介: 【8月更文挑战第12天】SpringBootWeb极速入门-实现一个简单的web页面01

Spring简介

Spring是一个开源的Java开发框架,其官网是 https://spring.io/
GIF 2023-11-8 14-27-13.gif
Spring提供了一系列的模块和功能,包括Spring MVCSpring BootSpring DataSpring FrameWork等,这些模块和功能可以帮助开发者快速构建高质量的、可扩展的应用程序。

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

Spring Boot依赖于Spring FrameWork,其可以帮助我们非常快速的构建应用程序、简化开发、提高效率。
在Spring的官网中,构建一个java应用程序,官方首先推荐的就是使用Spring Boot
GIF 2023-11-8 14-27-13.gif

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
GIF 2023-11-8 15-50-40.gif
接下来,我们需要选择Spring Web开发相关的依赖,Spring Boot版本我们选择2.7.17,防止版本太高出现一些问题。
GIF 2023-11-8 15-52-28.gif
最后点击CREATE等待项目联网创建(大约2min)

项目结构简析

项目的依赖下载完毕后,其项目结构如图image.png
我们先删除.mvn、.gitignore、HELP.md、mvnm及mvnm.cmd这些没有用的文件,让项目结构清爽一些。
GIF 2023-11-8 15-08-37.gif

启动类

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

resources文件夹

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

pom文件

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

<?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飘红
image.png
添加如下代码刷新pom即可

<plugins>
  <plugin>
    <groupId>org.springframework.boot</groupId>
    <artifactId>spring-boot-maven-plugin</artifactId>
  + <version>2.3.0.RELEASE</version>
  </plugin>
</plugins>

使用代码实现需求

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

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
GIF 2023-11-8 16-18-37.gif
控制台出现打印的日志时,我们打开浏览器访问http://localhost:8080/hello
image.png
可见,我们的第一个Spring Web项目已经成功运行!

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

相关文章
|
9月前
|
存储 Oracle Java
java零基础学习者入门课程
本课程为Java零基础入门教程,涵盖环境搭建、变量、运算符、条件循环、数组及面向对象基础,每讲配示例代码与实践建议,助你循序渐进掌握核心知识,轻松迈入Java编程世界。
698 0
|
10月前
|
安全 Java API
Java Web 在线商城项目最新技术实操指南帮助开发者高效完成商城项目开发
本项目基于Spring Boot 3.2与Vue 3构建现代化在线商城,涵盖技术选型、核心功能实现、安全控制与容器化部署,助开发者掌握最新Java Web全栈开发实践。
807 1
|
11月前
|
安全 Java 数据库连接
2025 年最新 Java 学习路线图含实操指南助你高效入门 Java 编程掌握核心技能
2025年最新Java学习路线图,涵盖基础环境搭建、核心特性(如密封类、虚拟线程)、模块化开发、响应式编程、主流框架(Spring Boot 3、Spring Security 6)、数据库操作(JPA + Hibernate 6)及微服务实战,助你掌握企业级开发技能。
1197 3
|
10月前
|
Java
java入门代码示例
本文介绍Java入门基础,包含Hello World、变量类型、条件判断、循环及方法定义等核心语法示例,帮助初学者快速掌握Java编程基本结构与逻辑。
681 0
|
10月前
|
存储 前端开发 Java
【JAVA】Java 项目实战之 Java Web 在线商城项目开发实战指南
本文介绍基于Java Web的在线商城技术方案与实现,涵盖三层架构设计、MySQL数据库建模及核心功能开发。通过Spring MVC + MyBatis + Thymeleaf实现商品展示、购物车等模块,提供完整代码示例,助力掌握Java Web项目实战技能。(238字)
1198 0
|
10月前
|
前端开发 Java 数据库连接
帮助新手快速上手的 JAVA 学习路线最详细版涵盖从入门到进阶的 JAVA 学习路线
本Java学习路线涵盖从基础语法、面向对象、异常处理到高级框架、微服务、JVM调优等内容,适合新手入门到进阶,助力掌握企业级开发技能,快速成为合格Java开发者。
1329 3
|
11月前
|
NoSQL Java 关系型数据库
Java 从入门到进阶完整学习路线图规划与实战开发最佳实践指南
本文为Java开发者提供从入门到进阶的完整学习路线图,涵盖基础语法、面向对象、数据结构与算法、并发编程、JVM调优、主流框架(如Spring Boot)、数据库操作(MySQL、Redis)、微服务架构及云原生开发等内容,并结合实战案例与最佳实践,助力高效掌握Java核心技术。
1073 2
|
11月前
|
Java 测试技术 API
Java IO流(二):文件操作与NIO入门
本文详解Java NIO与传统IO的区别与优势,涵盖Path、Files类、Channel、Buffer、Selector等核心概念,深入讲解文件操作、目录遍历、NIO实战及性能优化技巧,适合处理大文件与高并发场景,助力高效IO编程与面试准备。
|
11月前
|
Java 编译器 API
Java Lambda表达式与函数式编程入门
Lambda表达式是Java 8引入的重要特性,简化了函数式编程的实现方式。它通过简洁的语法替代传统的匿名内部类,使代码更清晰、易读。本文深入讲解Lambda表达式的基本语法、函数式接口、方法引用等核心概念,并结合集合操作、线程处理、事件回调等实战案例,帮助开发者掌握现代Java编程技巧。同时,还解析了面试中高频出现的相关问题,助你深入理解其原理与应用场景。
|
11月前
|
前端开发 Java 数据库
Java 项目实战从入门到精通 :Java Web 在线商城项目开发指南
本文介绍了一个基于Java Web的在线商城项目,涵盖技术方案与应用实例。项目采用Spring、Spring MVC和MyBatis框架,结合MySQL数据库,实现商品展示、购物车、用户注册登录等核心功能。通过Spring Boot快速搭建项目结构,使用JPA进行数据持久化,并通过Thymeleaf模板展示页面。项目结构清晰,适合Java Web初学者学习与拓展。
618 1