JavaEE进阶第五课:SpringBoot的创建和使用

news2025/1/12 22:52:21

上篇文章介绍了Bean 作用域和生命周期,这篇文章我们将会介绍SpringBoot的创建和使用

目录

  • 1.为什么要学习StringBoot
    • 1.1什么是SpringBoot
    • 1.2SpringBoot的优点
  • 2.如何用Idea创建SpringBoot项目
  • 3.项目目录介绍和运行
    • 3.1输入Helloworld
  • 结尾

1.为什么要学习StringBoot

在前几节课的学习下,我们已经体验到了Spring相较于Servlet带来的优势。尽管已经很方便了,但是对于实际使用来说仍有不足,据此SpringBoot诞生了,它的诞生是为了简化Spring程序的开发。

1.1什么是SpringBoot

简单来说,SpringBoot就像Spring的脚手架一样,有了SpringBoot我们开发Spring项目就会更加简单

1.2SpringBoot的优点

  1. 快速添加依赖(Spring Boot 提供了启动添加依赖(lombok,jdbc等等功能,新增追加都很方便的)
  2. 内置web容器(不需要自己整tomcat等web容器了,可直接部署运行)
  3. 自动装配
  4. 可以完全抛弃繁琐的 XML,使⽤注解和配置的⽅式进⾏开发
  5. ⽀持更多的监控的指标,可以更好的了解项⽬的运⾏情况

SpringBoot的优点最核心的就是前三点,但是对于第三点自动装配可能不容易理解,在这里着重解释。

自动装配:如果说我们要连接数据库,对于之前的Spring来说,我们要自己在手动处理数据库的链接,并手动创建datasource相关类,这个很麻烦,且在未来我们要更换数据库的时候,如果不是开发人员是运维来修改,是没办法进代码里面修改的。有了SpringBoot的话就不用担心这个问题,因为你把数据库连接的相关信息写在配置文件里面之后,它会自动的帮你构造datasource对象,你也不用担心后期更换数据库的问题,因为只要修改配置文件就行了。
就像:自己买菜做饭和点外卖的区别

2.如何用Idea创建SpringBoot项目

1.因为我们⽤的 Idea 社区版(其他版本也同样适⽤),所以先要安装 Spring Boot Helper 插件才能创建 Spring Boot 项⽬,如下图所示:
在这里插入图片描述

注:社区版的Idea下,建议版本不要过新,维持在2021.2.x之前最好,因为新版的Idea下载该插件需要收费。

2.安装成功后,点击创建新项目就能看到左侧框出现Spring了:
在这里插入图片描述
点击next:
在这里插入图片描述
next:
在这里插入图片描述

之前我们用Spring导入依赖,还要注意适配版本,而SpringBoot就不需要,因为它帮我们自动适配依赖版本的。但是这里一定要选2.x版本的,因为要和jdk版本适配。
在这里插入图片描述

最后,选择好你的项目名称和保存路径即可!

3.项目目录介绍和运行

在这里插入图片描述

补充:
/static:静态资源⽂件夹
/templates:模版资源⽂件夹

那么我们的SpringBoot怎么运行呢?我们需要找到启动类(被@SpringBootApplication注解的),运行它的main方法即可!

3.1输入Helloworld

之前我们用Spring写的只是应该Java项目,无法直接与浏览器交互,但前面说过SpringBoot可以。创建类:
在这里插入图片描述
运行后,访问http://localhost:8080/user/sayhi得到结果:
在这里插入图片描述

注解的含义可自行查看

注意:类的创建必须在启动类同级目录或者其子目录下,这个属于SpringBoot的不成文规定,这些规定还有很多,这个思想叫做:

  • 约定大于配置!

结尾

本节课就到这里了,喜欢的话还请多多为我投票哦(bushi)

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/379560.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

Python 算法交易实验49 Step1 DataETL

说明 万丈高楼平地起 按照前面的规划,开始有序推进我的【15% 资金加速器】计划。这一步是通过某个源,获取分钟级数据,然后送到第一个ADBS。 Sniffer : 读取数据并发送到入队列。一开始我会把文件以离线形式上传到某个folder,所以…

VMware16安装MacOS【详细教程】

安装VMware workstation 双击安装包,然后一直下一步就行了。 进行VMware安装,一直 下一步 在输入产品密钥这一步,如果有查找到可用密钥就填进去,没有就跳过,进入软件后也能输入密钥的。 输入密钥。 最后一步&#xff…

MyBatis——进阶操作

resultMap xml中可以通过returnType来指定返回的对象,只需要一个对象名就可以返回所有的属性 但是,如果sql中的属性名和对象的名称不一致,那么就需要resultMap来指定返回的数据了 当数据库中是username,而对象是name时&#xf…

zabbix主机发现、zabbix下的API、服务的监控部署

文章目录前言一、zabbix主机发现1.手动添加2.自动发现3.自动注册二、zabbix api1.获取token2.使用api检索主机3.通过api删除主机4.使用api添加主机5.纯代码过程三、服务监控1.nginx监控2.mysql监控(1)zabbix自带mysql模板(2)perco…

大数据技术之Maxwell基础知识

大数据技术之Maxwell基础知识 文章目录大数据技术之Maxwell基础知识0、写在前面1、Maxwell 概述1.1 Maxwell 定义1.2 Maxwell 工作原理1.2.1 MySQL 主从复制过程1.2.2 Maxwell 的工作原理1.2.3 MySQL 的 binlog1.3 Maxwell与Cannal对比2. Maxwell 使用2.1 Maxwell 安装部署2.1.…

Semaphore类原理剖析

1.什么是Semaphore Semaphore也是Java中的同步器,与CountDownLatch和CyclicBarrier不同的是,他的内部计数器是递增的。在一开始我们不需要知道有多少个需要同步的线程,只需要在需要同步的地方调用acquire方法指定需要同步的线程个数。 2.Se…

【C语言】结构体进阶

一、结构体 1. 结构体的声明 (1) 结构的基础知识 结构是一些值的集合,这些值称为成员变量。结构的每个成员可以是不同类型的变量。(2)结构的声明 struct tag {member-list; }variable-list;例如描述一个学生&#x…

「需求分析」业务架构师需求分析技术权威指南

需求分析,也称为需求工程,是定义用户对正在构建或修改的新软件的期望的过程。在软件工程中,它有时被一些松散的名称所引用,例如需求收集或需求捕获。需求分析包括那些为一个新的或改变的产品或项目确定需要或满足的条件的任务&…

进程内存空间

我们直接用linux演示 我们将这个代码编译成目标文件&#xff0c;然后查看内容 #include <stdlib.h> #include <pthread.h> int sum(int x,int y) {return xy; }int main(){sum(2,3);return 0; }编译 我们反汇编这个目标文件 我们发现这些汇编代码不好阅读&#…

有趣的HTML实例(十五) 注册登录界面(css+js)

我并不是每次吃完饭就看电视&#xff0c;有时我边吃边看电视&#xff0c;生活中有些改变会增加乐趣。 ——《加菲猫》 目录 一、前言 二、往期作品回顾 三、作品介绍 四、本期代码介绍 五、效果显示 六、编码实现 index.html style.css script.js 七、获取源码 公众…

何为数据分析?数据分析流程是啥?

一、什么是数据分析 指用专业的统计分析方法对大量数据进行分析&#xff0c;并加以详细研究和概括总结&#xff0c;提取有价值的信息&#xff0c;形成有效的分析结论&#xff0c;从而影响业务决策 二、数据分析的重要性 一切事物&#xff0c;如果不能量化它&#xff0c;我们…

Allegro如何手动让静态铜皮避让过孔操作指导

Allegro如何手动让静态铜皮避让过孔操作指导 在用Allegro做PCB设计的时候,如果铺的是静态铜皮,铜皮铺在过孔上会造成短路,需要手动避让下,如下图 下面介绍如何手动避让,具体操作如下 点击Shape点击Manual Void/Cavity

itop-3568开发板驱动学习笔记(3) 字符设备(上)

《【北京迅为】itop-3568开发板驱动开发指南.pdf》 学习笔记 文章目录字符设备简介申请字符设备号注册字符设备创建设备节点字符设备驱动框架&#xff08;实验&#xff09;杂项设备字符设备简介 字符设备是指在I/O传输过程中以字符为单位进行传输的设备&#xff0c;例如键盘&am…

如何使用ApacheTomcatScanner扫描Apache Tomcat服务器漏洞

关于ApacheTomcatScanner ApacheTomcatScanner是一个功能强大的Python脚本&#xff0c;该脚本主要针对Apache Tomcat服务器安全而设计&#xff0c;可以帮助广大研究人员轻松扫描和检测Apache Tomcat服务器中的安全漏洞。 功能介绍 1、支持使用多线程Worker搜索Apache Tomcat服…

ARM简介及其发展历史

前言ARM名声很大&#xff0c;最近在学习STM32&#xff0c;也借机梳理一下关于ARM的各种概念和信息。 本文主要内容&#xff1a;ARM一词的含义&#xff0c;ARM的发展历史&#xff0c;ARM cortex系列处理器简介与ARM在不同市场的应用情况。 一. ARM一词的4种含义1.1 ARM公司 AR…

如何外网登录访问瑞友天翼应用虚拟化系统?——快解析内网端口映射方案

瑞友天翼应用虚拟化系统&#xff08;GWT System&#xff09;是国内具有自主知识产权的应用虚拟化平台&#xff0c;是基于服务器计算&#xff08;Server-based Computing&#xff09;的应用虚拟化平台。如何将内网平台提供到互联网上外网访问&#xff0c;是我们比较关注的问题。…

【力扣-10天SQL入门】1~3天刷题 知识点总结

https://leetcode.cn/study-plan/sql/?progressjgmzq5s第1天 选择595. 大的国家无1757. 可回收且低脂的产品枚举类型enumenum是一个字符串对象&#xff0c;用于指定一组预定义的值&#xff0c;并可在创建表时使用&#xff0c;如sex取值为 (male, female, unknown)若要使用条件…

同为(TOWE)电源线让家用电器随心放置

如今&#xff0c;随着科技水平的不断发展&#xff0c;人们工作、生活中越来越离不开各类电子设备和电器产品。当用电器数量多了以后&#xff0c;由于电器设备原有电线长度的限制&#xff0c;常常需要通过连接接线板来延长电器设备的电能传输线路。电源线虽然看着是一件不起眼的…

51单片机定时器使用与计算-----day3

51单片机定时器-----day3 8051单片机介绍&#xff1a; 集成 8位CPU、 4K字节ROM&#xff08;掉电不丢失&#xff09;、 128字节RAM&#xff08;掉电丢失&#xff09;、 4个8位并口、 1个全双工串行口、2个16位定时/计数器。 寻址范围64K&#xff0c; 并有控制功能较强的布尔处…

MyBatis执行Sql的流程分析

目录 举例 openSession的过程 Executor 简单总结 获取Mapper的流程 Mapper方法的执行流程 doQuery方法 简单总结 举例 public class App {public static void main(String[] args) {String resource "mybatis-config.xml";Reader reader;try {//将XML配置文…