当前位置: 首页 > article >正文

初始JavaEE篇 —— 快速上手 SpringBoot

找往期文章包括但不限于本期文章中不懂的知识点:

个人主页:我要学编程程(ಥ_ಥ)-CSDN博客

所属专栏:JavaEE

目录

SpringBoot 相关介绍与解惑 

SpringBoot 项目的创建 

通过 官方提供的网页 来创建

通过 IDEA 来创建

SpringBoot 项目的介绍

pom.xml文件

项目目录介绍

第一个Hello World程序


SpringBoot 相关介绍与解惑 

从今天开始,我们就真正地进入了JavaEE的学习了,前面学习的一切知识都只是为JavaEE做基础,而JavaEE主要是学习框架。今天我们就来学习SpringBoot框架。在正式学习SpringBoot之前,先来了解几个概念:Spring是什么?SpringBoot是什么?Spring Framework又是什么?以及三者之间的关系是什么?框架是啥?

先来解释一下框架的概念:

我们在日常生活中,见到盖房子时,都会先建立一个大致的框架,然后再去进行细致砌房屋;还有在写作文或者一篇文章时,都会先构建出其大体的思路(思维导图).... 这些都是属于框架。框架,可以理解为一个简易的成品,我们建立起框架之后,只需在原本的基础上进行砌墙以及粉刷工作即可。同理,我们在编写一个网页时,也只需将框架搭好,然后再进行各种砌墙以及粉刷工作即可。这就大大减少了咱们程序员重复造轮子的工作,节省了大量的时间。

Spring Framework:在最早期的时候,只有 Spring Framework 这一个框架,因此为了方便,就将 Spring Framework 简称为 Spring,但是后续随着框架越来越多,Spring 家族的成员也是越来越多,但还是有不少人将Spring Framework 看成是 Spring。因此,我们需要看具体的上下文开区分到底是指Spring Framework 还是 Spring家族。

Spring:其既可以代指 Spring 家族,也是可以代指 Spring Framework的。

SpringBoot:SpringBoot 是 Spring 家族中的一员。

我们也可以看一下现如今的Spring家族:

知道了这些概念之后,可能会有小伙伴奇怪:为什么我们不学Spring呢?而是先学SpringBoot呢?如今的,Spring家族成员虽然非常多,但是我们主要还是从Spring Framework 开始学习,但是Spring Framework还是过于"笨重",对于我们初学者并不是很友好,因此诞生了SpringBoot,其的出现就是为了简化Spring Framework对于网页开发的复杂程度。可以简单理解为SpringBoot是Spring Framework  进行了进一步的封装,更为简单地让我们使用。具体如下图所示:

SpringBoot 项目的创建 

SpringBoot 项目的创建分为两种方式:

通过 官方提供的网页 来创建

1、先在浏览器中搜索 Spring 找到 Spring Home 或者 直接输入 https://spring.io/ 

2、找到 projects,点击最下方的 Spring Initializr

3、进入界面之后,按照下面的流程填充对应的信息即可创建:

创建SpringBoot项目的流程:选择 Maven 来构建项目,选择 Java 语言,选择 SpringBoot 的版本,填充项目信息,选择打包方式,选择 Java 版本,添加依赖。 

注意:

1)在选择SpringBoot的版本时,一定要选择稳定版本,不要选择开发版本。snapshot 的中文意思为 快照 ,这里我们理解为开发版本。

2)我们在创建完成时,也可以先观察一下这个项目是否为我们所需要的项目(有没有创建错):

4、在创建完成之后,我们可以用IDEA去找到浏览器的本地存储,并打开即可。

上述创建项目的方式太过繁琐,因此我们后续创建SpringBoot项目都是使用IDEA来创建。

通过 IDEA 来创建

注意:IDEA的版本最好是专业版,社区版需要下载插件,而且这个插件也是需要付费的,因此我们直接使用专业版即可。如果是在校学生的话,可以直接申请专业版的,当然我们也可以在网上自行选取别的方式来使用专业版。

1、File -> New -> Project:

2、Spring Boot -> 初始化项目的信息:

3、选择对应的SpringBoot版本,以及添加依赖,最后创建即可:

注意:创建SpringBoot项目时,选择的SpringBoot版本与Java的版本要相互对应才行。

SpringBoot 3.x,需要Java17或更高的版本,SpringBoot 2.x 支持 Java8 - Java17。我们的项目使用的是Java17,既可以创建SpringBoot 2.x ,也可以创建SpringBoot 3.x。这样才能确保Spring Boot项目 对 Java 版本的兼容。

SpringBoot 项目的介绍

创建完SpringBoot项目之后,我们就可以来观察项目的相关文件以及代码目录了。

pom.xml文件

注意:

1、这里的父项目我们可以看到是 Spring Framework,也进一步证明了 SpringBoot 是对 Spring Framework 的进一步封装,而父项目就是用来简化Spring Boot项目的配置。这里可以理解为我们前面的继承知识,子类继承父类之后,父类相关的属性子类直接就可以使用,这里就是将相对复杂的配置给到了父项目,而在子项目中就不需要考虑这么多的问题了,直接使用即可。

2、这里pom文件中的内容并不只怎么多,还有一些URL相关的,这些与我们的项目没有直接的关联,可以直接删掉就行。

项目目录介绍

static:静态资源文件夹,比如前期学的 js、css、html 等静态文件所在之处,不需要服务器数据进行绑定的页面。

templates:模版资源文件夹,主要存放动态模板文件,比如JSP、Freemarker、Thymeleaf等需
要服务器动态渲染数据的文件。

第一个Hello World程序

进入JavaEE的学习之后,我们不再是像之前那样运行的结果全部在一个输出框中,而是在浏览器中来访问,也就是使用浏览器来进行交互。我们创建出一个SpringBoot项目之后,包路径下都会自带一个启动类以及一个启动方法。

注意:启动类是与注解有关,而与类名无关。这里之所以被称为是启动类,主要是由于这里存在一个@SpringBootApplication,至于这个类的名字,我们可以随意取。

当我们启动了启动类的main方法时,我们就可以在网络中来进行访问了。

接下来,我们就来学习怎么输出Hello World:

1、先找到对启动类所在的包,右击选择 New -> Java Class:

2、输入类名HelloController(最好后面带有Controller结尾,后续再学习): 

3、编写JavaSE阶段学习的Hello World即可。

4、在类上方加上注解:@RestController,并在方法上方加上注解:@RequestMapping。

@RestController
public class HelloController {
    @RequestMapping("/hello")
    public String hello() {
        return "Hello World";
    }
}

5、找到启动类,并运行。

6、打开浏览器,在地址栏中输入 http://127.0.0.1:8080/hello 或者 http://localhost:8080/hello,回车即可。

经过上述步骤就会有下面的结果:

我们仔细观察会发现,JavaEE阶段的代码都是需要在JavaSE阶段的基础上加上注解的。

注意:

1、SpringBoot内置了Web服务器,即Tomcat,Web服务器负责接收来自客户端(比如浏览器)的 HTTP 请求,并返回相应的 HTTP 响应,因此我们在访问SpringBoot项目时,就是使用的http协议。而Tomcat的工作端口默认是8080,因此这里也是使用8080来访问。

2、如果不加上注解就是普通类,加上注解之后,就变成了请求响应类。

3、我们在启动了SpringBoot项目之后,会发现其是一直处于运行中的,并没有进程结束的标志,这是因为启动的SpringBoot项目是一个服务端,而服务端是一直处于运行状态的。当我们修改了服务端的代码之后,一切都得重新启动服务才能继续访问修改的部分。

这里我们简单的学习了SpringBoot项目的创建与编写代码,后续我们在来详细地学习SpringBoot中的注解。

常见错误以及解决方法

找不到主类或者无法加载主类: 

上图中,代码啥的都没有问题,但程序就是运行不起来。

如果我们仔细观察的话,会发现main目录下的java文件夹的颜色与普通文件夹的颜色并不差别,也就是说这里的java文件夹是一个普通的文件夹,但是我们需要的是源文件的根目录。因此得修改java文件夹为源文件的根目录。 

有两种解决方案:

方案一:

1、找到需要修改的文件夹,右击,找到 Mark Directory as:

2、选择需要修改为啥样的文件夹。例如,这里的java文件夹是需要修改为源文件根目录,因此点击 Sources Root。

方案二: 

1、找到 File -> Project Structure:

2、找到 Modules 右侧的 Mark as,与方案一的选择是一致的: 

3、点击右下方的 apply 与 OK 即可。

好啦!本期 初始JavaEE篇 —— 快速上手 SpringBoot 的学习之旅 就到此结束啦!我们下一期再一起学习吧!


http://www.kler.cn/a/511841.html

相关文章:

  • IJCAI-2024 | 具身导航的花样Prompts!VLN-MP:利用多模态Prompts增强视觉语言导航能力
  • Wi-Fi 7、Wi-Fi 6 与 5G、4G 的全方位对比
  • PHP企业IM客服系统
  • Netty的相关组件之间的关系
  • 基于springboot的口腔管理平台
  • 考前64天 学习笔记 - 形成“习惯体系”进行最小启动
  • 【Redis】Redis 集群中节点之间如何通信?
  • [cg] glProgramBinary
  • JavaScript系列(35)-- WebSocket应用详解
  • Redis系列之底层数据结构字典Dict
  • 图像处理|顶帽操作
  • Kivy App开发之UX控件Bubble气泡
  • 使用redis-cli命令实现redis crud操作
  • Meta标签教程:提升网站SEO与用户体验的利器
  • 人工智能之数学基础:线性代数中的线性相关和线性无关
  • windows下使用docker执行器并配置 hosts 解析
  • Agent AI: 强化学习,模仿学习,大型语言模型和VLMs在智能体中的应用
  • 2024年第十五届蓝桥杯青少组国赛(c++)真题—快速分解质因数
  • 仿 RabbitMQ 的消息队列2(实战项目)
  • 在C#中添加I/O延时和持续时间
  • Ubuntu 22.04 能识别笔记本的键盘,但是无法识别外接键盘
  • 【无界】微前端技术应用
  • 【大数据】机器学习----------降维与度量学习
  • 【自动驾驶BEV感知之tesla发展历程】
  • git命令手册
  • Ubuntu 24.04 LTS 更改软件源