Springboot入门教程系列HelloWorld

接下来学习Springboot相关的知识,从简单的入门到高级篇【也就是Springboot企业级快速开发的整合部分】,接下来的教程适合入门小白看,简单的说下入门级教程的环境准备

环境准备
  • jdk 1.8+
  • Maven:3.6.1
  • springboot: 2.2.7

目前springboot最新版本为2.3.0,我这里使用的是2.2.7版本,不影响我们自己学习

编写自己的第一个springboot 应用

说明:构建springboot应用有两种方式分别是:1、采用maven的方式 2、采用springboot的Spring Initializer模板来快速帮助我们构建,两种我们都来尝试一下,首先我这里以maven的方式来构建,具体的步骤如下所示:

    1. 构建一个maven工程【SpringbootHelloWorld】

      image.png

上述是maven构建工程的基本目录结构

    1. 在pom文件中导入相关依赖文件,具体如下所示:

    <parent> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-parent</artifactId> <version>2.2.7.RELEASE</version> </parent> <dependencies> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-web</artifactId> </dependency> </dependencies> <build> <plugins> <plugin> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-maven-plugin</artifactId> </plugin> </plugins> </build>

上述只是简单引入了web模块,还有我们打包的maven插件等,后面我们自己来打包成jar

  • 3.编写我们的主程序类,其主要是用来启动Springboot应用

    import org.springframework.boot.SpringApplication;
    import org.springframework.boot.autoconfigure.SpringBootApplication;

    @SpringBootApplication //该注解表明是一个Springboot的应用
    public class SpringbootHelloWorldMain {
    public static void main(String[] args) {
    //启动我们的springboot应用
    SpringApplication.run(SpringbootHelloWorldMain.class,args);
    }
    }

  • 4.编写我们的业务controller

    import org.springframework.web.bind.annotation.GetMapping;
    import org.springframework.web.bind.annotation.RestController;

    @RestController
    public class HelloController {

    @GetMapping(value = "hello")
    public String hello(){
    return "hello Springboot!";
    }
    }

  • 5.运行我们的主启动类进行页面访问测试:http://localhost:8080/hello

image.png
这样我们的一个springboot应用创建完成,接着我们打成我们所熟悉的jar包,具体打包过程如下所示:
image.png
进入我们的工程根目录下找到该jar,用java -jar的方式启动我们的jar如图:
image.png

  • 6.启动jar

image.png
访问http://localhost:8080/hello,结果如下图所示:
image.png

同样也能完成访问,那么到这里springboot的入门案例我们讲解完毕

喜欢的朋友记得点赞、收藏、关注哦!!!

相关推荐
野犬寒鸦1 分钟前
JVM垃圾回收机制面试常问问题及详解
java·服务器·开发语言·jvm·后端·算法·面试
曲幽14 分钟前
FastAPI实战:WebSocket vs Socket.IO,这回真给我整明白了!
python·websocket·nginx·socket·fastapi·web·async·socketio
小璐资源网17 分钟前
UPS电源管理:应对突发断电的应急方案
linux·运维·服务器
grrrr_123 分钟前
【工具类】虚拟机 + Ubuntu 安全部署 OpenClaw,联动 Ollama 零成本解锁云端大模型
linux·运维·ubuntu·#openclaw·#小龙虾
HealthScience24 分钟前
github怎么授权ssh(私人库授权)
运维·ssh·github
_杨瀚博26 分钟前
JAVA找出哪个类import了不存在的类
java·后端
原来是猿33 分钟前
MySQL【事务下】
数据库·mysql·oracle
OKkankan35 分钟前
深入理解linux进程
java·linux·c++
HABuo35 分钟前
【linux线程(一)】线程概念、线程控制详细剖析
linux·运维·服务器·c语言·c++·ubuntu·centos
奕成则成1 小时前
面试被问:MySQL 与 Doris/SelectDB 的架构区别。 大数据为什么禁止select *。
mysql·面试·架构