学习SpringBoot入门知识,附带教程源码分享,快速掌握开发技巧-【imooc-java2021】体系课-Java工程师 2022版

news/2024/11/24 6:20:47/

学习SpringBoot入门知识,附带教程源码分享,快速掌握开发技巧

  • 目录
    • 福利:文末有分享SpringBoot教程及源码哦
  • 一、Spring Boot 是什么
  • 二、为什么要使用 Spring Boot
  • 三、快速入门
    • 3.1 创建 Spring Boot 项目
      • 3.1.1 通过 Spring Initializr 来创建
        • 1、访问 Spring Initializr 地址:https://start.spring.io:
        • 2、生成项目, 导入到开发工具中
        • 3、File -> New -> Model from Existing Source, 可参考下图:
        • 4、弹出框中,选中您的解压后的文件夹 -> OK -> 选择通过 Maven 的方式来导入项目:
        • 5、一路点击 Next -> Finished;
      • 3.1.2 通过 IntelliJ IDEA 来创建应用
        • 1、File -> New -> Project, 跳出新建项目弹出框:
        • 2、点击 Next,弹出填写 maven 项目的需要的相关信息,这里我们用默认的就好了,继续点击 Next;
        • 3、再次弹出框,这里可以勾选开发中需要的 Starter 的组件, 如 Web, Redis 等,我们这里暂时不勾,后面通过手动添加的方式, 继续点击 Next -> Finish;
    • 3.2 项目结构
    • 3.3 引入 Web 依赖
    • 3.4 编写第一个接口
    • 3.5 启动程序,验证效果
  • 四、总结

目录

福利:文末有分享SpringBoot教程及源码哦

在这里插入图片描述

一、Spring Boot 是什么

以下截图自 Spring Boot 官方文档:

在这里插入图片描述

翻译整理一下,内容如下:

Spring Boot 是基于 Spring 框架基础上推出的一个全新的框架, 旨在让开发者可以轻松地创建一个可独立运行的,生产级别的应用程序。
基于 Spring Boot 内部的自动化配置功能,开发者可以在"零"配置, 或者只需要添加很少的配置,就可以进行日常的功能开发。

二、为什么要使用 Spring Boot

用权威说话,下图同样截图自 Spring Boot 官方文档:

在这里插入图片描述

我们再来翻译整理一下,内容如下:

1、能够轻松、方便地创建一个 Spring 应用;
2、直接使用内嵌的 Tomcat, Jetty, Undertow 容器(无需再手动安装容器,通过部署 WAR 包的方式);
3、内部自动管理各种 Jar 包的版本依赖关系,再也不用为版本冲突而烦恼啦;
4、自动化配置 Spring 相关功能,以及第三方库;
5、提供诸如指标,健康检查, 外部化配置等功能;
6、“零配置”,再也不需要手写地狱般的 XML 配置了;

怎么样,看了 Spring Boot 这些强大的特性以后,是不是开始跃跃欲试了,接下来,让我们快速入门 Spring Boot 吧 !

PS: 正由于 Spring Boot 以上特性,才得以使它成为构建微服务架构的基础组件。

三、快速入门

3.1 创建 Spring Boot 项目

3.1.1 通过 Spring Initializr 来创建

1、访问 Spring Initializr 地址:https://start.spring.io:

在这里插入图片描述

默认情况下,Spring Initializr 生成的项目是通过 Maven 来构建的,开发语言为 Java, 版本用的最新的发行版,打包方式为 Jar, 使用的 Java 版本为 1.8,小伙伴们这里要注意一下!

2、生成项目, 导入到开发工具中

点击 GenerateProject 按钮,下载的 Demo.zip, 解压后,导入到开发工具中,这里笔者使用的是 IntelliJ IDEA。

3、File -> New -> Model from Existing Source, 可参考下图:

在这里插入图片描述

4、弹出框中,选中您的解压后的文件夹 -> OK -> 选择通过 Maven 的方式来导入项目:

在这里插入图片描述

5、一路点击 Next -> Finished;

至此,通过 Spring Initializr 网站来创建应用,并导入到了我们的开发工具 IntelliJ IDEA 中就成功了。

PS: 如果您使用的是 Eclipse, 方式是 Import -> Existing Maven Projects -> Next ->
选择解压后的文件夹 -> Finsh

3.1.2 通过 IntelliJ IDEA 来创建应用

其实,我们还可以直接通过 IntelliJ IDEA 来创建一个 Spring Boot 项目,因为 IntelliJ IDEA 内置了 Spring Initializr,接下来,通过图文,让我们来看下要如何一步一步操作:

1、File -> New -> Project, 跳出新建项目弹出框:

在这里插入图片描述

2、点击 Next,弹出填写 maven 项目的需要的相关信息,这里我们用默认的就好了,继续点击 Next;

3、再次弹出框,这里可以勾选开发中需要的 Starter 的组件, 如 Web, Redis 等,我们这里暂时不勾,后面通过手动添加的方式, 继续点击 Next -> Finish;

3.2 项目结构

项目创建成功后,可以看到结构如下:

在这里插入图片描述

共分为三个主要的文件夹:

  • src/mail/java: 存放 Java 源码,包括启动程序的入口;
  • src/mail/resources: 资源目录,用于放置相关配置文件,静态文件 html, css 等;
  • src/test/java: 存放单元测试类

3.3 引入 Web 依赖

在 pom.xml 文件中添加 web 依赖:

<dependency><groupId>
org.springframework.boot
</groupId><artifactId>
spring-boot-starter-web
</artifactId></dependency>

PS: 不用手动去指定版本号,因为 Spring Boot 内部已经维护相关 Jar 包的依赖关系。

3.4 编写第一个接口

在 com.example.demo 包下添加 controller 包,用来存放所有对外部开发的接口, 完成后,创建 HelloController.java 类, 添加一个 /hello 接口:

@RestControllerpublicclassHelloController{
@GetMapping("/hello")public String hello (){return"Hello, Spring Boot !";
}
}

添加 @RestController 注解,表示此类中所有定义的接口均为 RESTFul 风格,也就是说返参均为 JSON 格式的。

@GetMapping(“/hello”) 表示定义一个 GET 请求的接口,路径为 /hello。

3.5 启动程序,验证效果

在这里插入图片描述

根据图示,点击按钮,来启动 Spring Boot Web 程序, 查看控制台输出:

  
.____          _            __ _ _/
\\ 
/___
'_ __ _ _(_)_ __  __ _ \ \ \ \( ( )\___ | '
_ 
|'_| | '
_ \/ _
` | \ \ \ \\\/  ___)| |_)| | | | | || (_| |  ) ) ) )'  |____| .__|_| |_|_| |_\__, | / / / /=========|_|==============|___/=/_/_/_/:: Spring Boot ::        (v2.1.4.RELEASE)2019-04-14 19:57:59.795  INFO 3680 --- [           main] com.example.demo.DemoApplication         : Starting DemoApplication on 192.168.0.100 with PID 3680 (/Users/a123123/Work/IdeaProjects/demo/target/classes started by allen-jiang in /Users/a123123/Work/IdeaProjects/demo)2019-04-14 19:57:59.798  INFO 3680 --- [           main] com.example.demo.DemoApplication         : No active profile set, falling back to default profiles: default2019-04-14 19:58:00.666  INFO 3680 --- [           main] o.s.b.w.embedded.tomcat.TomcatWebServer  : Tomcat initialized with port(s): 8080 (http)2019-04-14 19:58:00.689  INFO 3680 --- [           main] o.apache.catalina.core.StandardService   : Starting service [Tomcat]2019-04-14 19:58:00.689  INFO 3680 --- [           main] org.apache.catalina.core.StandardEngine  : Starting Servlet engine: [Apache Tomcat/9.0.17]2019-04-14 19:58:00.756  INFO 3680 --- [           main] o.a.c.c.C.[Tomcat].[localhost].[/]       : Initializing Spring embedded WebApplicationContext2019-04-14 19:58:00.757  INFO 3680 --- [           main] o.s.web.context.ContextLoader            : Root WebApplicationContext: initialization completed in 920 ms2019-04-14 19:58:00.978  INFO 3680 --- [           main] o.s.s.concurrent.ThreadPoolTaskExecutor  : Initializing ExecutorService 'applicationTaskExecutor'2019-04-14 19:58:01.183  INFO 3680 --- [           main] o.s.b.w.embedded.tomcat.TomcatWebServer  : Tomcat started on port(s): 8080 (http) with context path ''2019-04-14 19:58:01.186  INFO 3680 --- [           main] com.example.demo.DemoApplication         : Started DemoApplication in 1.678 seconds (JVM running for 2.176)

当控制台日志中输出了 Tomcatstarted on port(s):8080(http)withcontext path’'时,表示内嵌的 Tomcat 容器已经启动成功了,端口为 8080 !

接下来,我们在浏览器上访问 http://localhost:8080/hello 接口,验证一下,接口是否能够正常访问:
在这里插入图片描述

返回了我们想要的 Hello,SpringBoot! 字符串,接口访问正常,大工告成!

四、总结

本文中,我们首先了解了什么是 Spring Boot, 以及Spring Boot 的相关特性,最后我们手把手学习了如何搭建一个 Spring Boot 项目,并编写了第一个接口且访问成功。

通过实际操作,真切地感受到了 Spring Boot 的魅力所在!老铁,双击 666!
在这里插入图片描述

在这里插入图片描述
关注微信公众号:资源充电吧
回复:SpringBoot
【imooc-java2021】体系课-Java工程师 2022版
夸克网盘:https://pan.quark.cn/s/bbaec39732e0#/list/share

关注公众号,你想要的资源全都有,超多资源全部免费纯分享哦


http://www.ppmy.cn/news/82619.html

相关文章

大数据项目实战之数据仓库:电商数据仓库系统——第9章 数仓开发之DWD层

文章目录 第9章 数仓开发之DWD层9.1 交易域加购事务事实表9.2 交易域下单事务事实表9.3 交易域取消订单事务事实表9.4 交易域支付成功事务事实表9.5 交易域退单事务事实表9.6 交易域退款成功事务事实表9.7 交易域购物车周期快照事实表9.8 工具域优惠券领取事务事实表9.9 工具域…

你的数字困境是什么?

导语 随着数字时代的到来&#xff0c;人类社会迎来了前所未有的便利和机遇。然而&#xff0c;随之而来的是个人隐私和信息安全面临的巨大挑战。本文将探讨当前数字时代中的数字困境&#xff0c;并提出一些应对策略&#xff0c;以实现个人隐私和信息安全的平衡。 第一部分&…

explain都不懂?搞什么数据库优化,快进来学习了

文章目录 一、 前言二、MySQL EXPLAIN实战三、mysql EXPLAIN输出结果详解3.1 id详解3.2 select_type3.3 table3.4 partitions3.5 type3.6 possible_keys3.7key3.8 key_len3.9 ref3.10 rows3.11 filtered3.12 Extra 一、 前言 EXPLAIN 想必用过mysql的小伙伴都听过&#xff0c;…

解读kubernetes部署:配置docker私服密钥与SSL证书创建

为k8s配置docker私服密钥 为了kubernetes有权访问您的docker私服&#xff0c;需要在kubernetes的凭证中建立docker私服的密钥&#xff1a; kubectlcreatesecretdocker-registryaliyun-secret--docker-server--docker-username--docker-password--docker-email--namespacens-jav…

直接缓存访问DCA

直接缓存访问DCA&#xff1a;网卡原本DMA写是将接收到的数据帧写入系统内存&#xff0c;DCA机制是网卡DMA写输入的数据能直接发送到属于CPU内部的L2高速缓存中&#xff0c;从而提高网络IO的性能。 设备驱动程序要初始化网卡的DCA功能&#xff0c;将CPU ID号&#xff08;通过获取…

基于网络的思维导图WiseMapping

在退烧了一天半之后&#xff0c;老苏的抗原终于变两道杠了。之前还总怀疑自己是无症状&#xff0c;大意了&#xff0c;被新冠给查缺补漏了 &#x1f602; 什么是 WiseMapping &#xff1f; WiseMapping 是一款基于网络的免费思维导图产品。该项目的目标是提供可由企业、教育和学…

如何在MyEclipse中使用JavaScript编写代码?

MyEclipse v2022.1.0正式版下载 JavaScript 项目 在 MyEclipse 2021 及更高版本中&#xff0c;JavaScript 支持对大多数 JavaScript 源代码都是开箱即用的——不需要特殊的 JavaScript Eclipse 项目或 JavaScript facet。但是&#xff0c;我们建议使用jsconfig.json文件来指定…

从感官沉浸到无边界互操作,细数元宇宙游戏的底层逻辑世界

元宇宙已经不是全宇宙最热的概念了&#xff0c;冷下来之后或许才能踏踏实实落地。 元宇宙是下一代的互联网形态&#xff0c;是三维的“空间互联网”。或者说是大家更希望这是未来的互联网。我们将通过VR虚拟现实头盔、AR增强现实眼镜等一系列设备&#xff0c;体验三维化的互联…