SpringBoot学习历程(一):简单入门

SpringBoot学习(汇总版) 一、SpringBoot简介 1.1、Spring能做什么 1.1.1、Spring的能力及生态 1.1.2、Spring5的响应式编程 1.2、SpringBoot是什么 百度百科:Spring Boot是由Pivotal团队提供的全新框架,其设计目的是用来简化新Spring应用的初始搭建以及开发过程。该框架使用了特定的方式来进行配置,从而使开发人员不再需要定义样板化的配置。通过这种方式,Spring Boot致力于在蓬勃发展的快速应用开发领域(rapid application developmen 阅读详情

前言

  • 本人github仓库地址:https://github.com/RabbitsInTheGrass/springBoot-Learning

SpringBoot简单入门

Spring Boot好处: 。。。。。一大堆,本人就不罗列了。

1.1 准备工作

  1. JDK 1.8+
  2. Maven 3.2+ (3.6.1安装教程)
  3. IntelliJ IDEA(2019.2.2安装教程)
    注意:
    JDK 安装、Maven 安装、Git 安装和 IntelliJ IDEA 开发工具安装可参照对应教程链接。

1.2 创建一个Spring Boot工程

其实 Spring Boot 工程本质上就是一个 Maven 工程,这里说下两种不同的创建方式:

1.2.1 在线创建

这是官方提供的创建方法,使用http://start.spring.io/来构建一个简单的Spring Boot项目。

  1. 访问:http://start.spring.io/
  2. 选择构建工具 Maven Project、Java、Spring Boot 版本 2.1.8 以及一些工程基本信息,可参考下图所示:SpringInitializr
  3. 点击Generate Project下载项目压缩包
  4. 导入到你的工程,如果是IDEA,则需要:
    a.菜单中选择File–>New–>Project from Existing Sources…
    b.选择解压后的项目文件夹,点击OK。
    c.点击Import project from external model并选择Maven,点击Next到底为止。
    d.选择Java SDK为jdk1.8。

1.2.2 IDEA创建

菜单中选择File–>New–>Project,选择Spring Initializr,然后如下图操作:
1
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

1.2.3 项目结构

在这里插入图片描述
java 目录中是编写代码的源目录,test 目录是编写单元测试的目录。
resources 目录会有 application.properties 应用配置文件,还有默认生成的 static 和 templates 目录,static 用于存放静态资源文件,templates 用于存放模板文件。可以在 application.properties 中自定义配置资源和模板目录。
pom.xml:Maven构建说明文件。

1.3 解析pom.xml

1.3.1 spring boot 父级依赖

<!-- Spring Boot 启动父依赖 -->
 <parent>
     <groupId>org.springframework.boot</groupId>
     <artifactId>spring-boot-starter-parent</artifactId>
     <version>2.1.8.RELEASE</version>
     <relativePath /> <!-- lookup parent from repository -->
 </parent>

这是Spring Boot父级依赖,parent它继承自 spring-boot-dependencies,这个里边定义了依赖的版本,也正是因为继承了这个依赖,所以我们在写依赖时才不需要写版本号。

1.3.2 spring-boot-starter-xx 启动依赖

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

Spring Boot提供了很多”开箱即用“的依赖模块,都是以spring-boot-starter-xx作为命名的,通过提供众多起步依赖降低项目依赖的复杂度。

1.3.3 Spring Boot Maven插件

<build>
    <plugins>
        <plugin>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-maven-plugin</artifactId>
        </plugin>
    </plugins>
</build>

把项目打包成一个可执行的jar。

1.4 应用类

1.4.1启动应用类

@SpringBootApplication
public class LearnApplication {

    public static void main(String[] args) {
        SpringApplication.run(LearnApplication.class, args);
    }

}

@SpringBootApplication,这是一个组合注解,主要包含了:

  1. @SpringBootConfiguration(包含@Configuration),也是一个组合注解
    在Spring Boot项目中替代@Configuration
  2. @EnableAutoConfiguration,Spring Boot的强大之处,
    该注解会使spring boot根据项目的jar包进行自动配置,查看maven依赖
    可以看到有一个spring-boot-autoconfigure-xxx.jar,这里有很多spring配置类,
    如:我们添加了spring-boot-starter-web, 项目中自动引入SpringMVC 的相关jar,Spring Boot就自动配置tomcat和springMVC相关bean
  3. @ComponentScan,默认扫描@SpringBootApplication所在类目录及它的子目录

@SpringBootApplication的exclude属性:关闭配置,
如果我们在项目中引入了solrj的相关包,spring boot会自动为我们创建solr
的相关bean,但有时候我们希望自己配置bean,这时可以这样:
@SpringBootApplication(exclude={SolrAutoConfiguration.class})
这样就可以自己写java spring 配置类或xml,配置solr的相关bean了
同样的,如果你不想引入Spring Boot默认的依赖可以在pom.xml中使用标签,看下图:
在这里插入图片描述

1.4.2 Controller类

@RestController
@RequestMapping("/home")
public class HomeController {
	.....
}
  1. @RestController:提供实现了REST API,可以服务JSON,XML或者其他。
  2. @RequestMapping:提供路由映射信息。
探索SpringBoot发展历程 大家好,我是Leo哥🫣🫣🫣,今天给大家带来关于精品SpringBoot专栏,暂且就给他起名为循序渐进学SpringBoot,这里我参考了我上一个专栏:循序渐进学SpringSecurity6。有需要的朋友可以抓紧学习来哈,带你从SpringSecurity从零到实战项目。 阅读详情

相关推荐

SpringBoot学习过程各种Demo

SpringBoot学习过程各种Demo例子代码,包括数据库sql脚本。 因为不是实际项目,加上是循序渐进增加的代码,所以package归类整理不怎么好。 里面包含优快云专栏 http://blog.youkuaiyun.com/column/details/spring-boot.html 中的所有用到的代码。

超详细的Springboot入门教程,看了必会

超详细的Springboot入门教程,看了必会

weixin_48227718的博客 2万+

推荐系统召回总结(持续更新)

推荐系统架构 候选池:可供推荐的物料候选池,对于图文、短视频、新闻等来说通常是最近N天的新物料组成的集合,定期进行物料更新。 召回:从候选池中选出和用户相关的物料,交给后面的排序模块进行打分。召回面对的候选集通常是数十万或者百万甚至千万的量级,检索过程必须轻量快速。通常由多路召回组成,保证不遗漏且相关性、多样性尽量好,可以分为非个性化召回和个性化召回。 粗排:对召回选择的几千或者几百候选物料进行排序,快速打分选出topN,减少精排的压力,兼顾精准与效率。 精排:对粗排的结果进行精准排序,这个环节需要特征尽可

whgyxy的博客 2515

SpringBoot学习历程

这里写自定义目录标题SpringBoot配置文件功能快捷键合理的创建标题,有助于目录的生成如何改变文本的样式插入链接与图片如何插入一段漂亮的代码片生成一个适合你的列表创建一个表格设定内容居中、居左、居右SmartyPants创建一个自定义列表如何创建一个注脚注释也是必不可少的KaTeX数学公式新的甘特图功能,丰富你的文章UML 图表FLowchart流程图导出与导入导出导入 SpringBoot 你好! 这是你第一次使用 Markdown编辑器 所展示的欢迎页。如果你想学习如何使用Markdown编辑器,

qq_45410091的博客 476

PromptBio实战:如何用AI对话搞定转录组数据分析(附详细操作截图)

本文详细介绍了如何利用PromptBio平台通过AI对话完成转录组数据分析,无需编程基础即可实现从数据上传到结果解读的全流程。文章包含详细的操作截图和参数配置建议,帮助科研人员快速掌握这一生信分析工具,显著提升研究效率。

weixin_30872157的博客 136

使用C++编写一个可视化窗口

初学C++时,控制台会给我们提供一个黑窗口,而这篇文章所做的就是:创建一个属于图形界面窗口,而不是使用控制台黑窗口 如图,这是一个标题为XSZY的窗口 看完这篇文章,你想要的窗口大小,图标等都可以自己定义 甚至是在窗口上鼠标的样子,都是可以随意改的 所有有关视窗的基本函数和类型都定义在头文件 <windows.h> 中 我们只需要引用就好了 //引用头文件 windows.h #include<windows.h> 然后定义程序的入口函数main int __stdcall W

XSZY_的博客 6万+

SpringBoot学习指南:从入门到精通,全网最详尽的SpringBoot学习指南(基础篇)

​ 入门案例做完了,这个时候回忆一下咱们之前说的SpringBoot的功能是什么还记得吗?加速Spring程序的开发,现在是否深有体会?再来看SpringBoot技术的设计初衷就很容易理解了。​ SpringBoot是由Pivotal团队提供的全新框架,其设计目的是用来简化Spring应用的初始搭建以及开发过程。​ 都简化了了哪些东西呢?Spring程序缺点依赖设置繁琐。

weixin_69912448的博客 4799

避坑指南:你的VASP CI-NEB计算为什么不收敛?常见错误分析与解决思路

本文深入解析VASP CI-NEB计算不收敛的常见问题,提供从结构准备到参数设置的系统解决方案。针对过渡态计算中的能量曲线异常、中间图像偏离等典型问题,详细介绍了诊断方法和实用工具,帮助研究者高效解决CI-NEB收敛难题,提升计算效率。

weixin_29698641的博客 433

Spring Boot学习之旅:从初探到精通的蜕变

我相信,在不断学习和实践的过程中,我能够在Spring Boot的世界里取得更大的进步。同时,我也意识到自己在理论学习中的不足,比如对某些配置细节的理解不够深入,对特定场景下的最佳实践不够熟悉等。随着学习的深入,我逐渐领略到了Spring Boot依赖管理和自动配置的魅力。在当今这个瞬息万变的软件开发领域,Spring Boot以其独特的魅力和强大的功能,成为了众多开发者心中的首选框架。作为一名渴望掌握前沿技术的学习者,我满怀着对Spring Boot的好奇与热情,踏上了这段充满惊喜与收获的学习之旅。

Dark6ps的博客 432

【Excel VBA 编程】批量核对两张表格数据,行和列显示顺序均被打乱

利用数据字典在 Excel 中进行表格数据的核对,该表格含有多行多列,并且行和列顺序是打乱的,批量核对数据后将差异输出

wei1019的专栏 1293

鸢尾花分类预测

鸢尾花数据总用有150个样本,是一个典型的分类数据集,共有3个类别,分别是山鸢尾(Iris-setosa)、变色鸢尾(Iris-versicolor)和维吉尼亚鸢尾(Iris-virginica),每个样本的特征有4列sepal_length:萼片长度sepal_width:萼片宽度petal_length:花瓣长度petal_width:花瓣宽度这里我们定义了随机森林模型作为实例,来进行模型训练,之后我们会对其使用网格搜索找到最优的参数。

优快云 精品推荐 2189

Kite的学习历程之SpringBoot简单整合Security框架

SpringBoot简单整合Security框架

weixin_46554504的博客 439

苏宁易购手机行情比价系统:构建一个完整的Python爬虫实战指南

在当今数字化时代,智能手机已成为人们生活中不可或缺的一部分。随着各大手机品牌每年推出多款新品,消费者面临着越来越多的选择。然而,不同电商平台、不同时间段的价格波动使得消费者很难把握最佳购买时机。苏宁易购作为国内领先的电商平台之一,拥有丰富的手机商品信息和价格数据。本文将带领读者构建一个完整的苏宁易购手机行情比价系统,帮助消费者实时掌握手机价格动态。

2201_76125261的博客 207

Kite的学习历程之SpringBoot的入门案例

SpringBootd的入门案例

weixin_46554504的博客 255

tar解压报错 gzip: stdin: unexpected end of file tar: Unexpected EOF in archive

错误现象: [root@centos7-xinsz08 ~]# tar xf prometheus-2.7.2.linux-amd64.tar.gz gzip: stdin: unexpected end of file tar: 归档文件中异常的 EOF tar: 归档文件中异常的 EOF tar: Error is not recoverable: exiting now 错误原因排查 ...

互联网老辛 2万+

visio安装包

Microsoft Office Visio 是一款专业的制图软件。利用经过更新的形状、协作工具和数据链接图表,创建专业级图表以简化复杂的信息。

springboot入门学习

spring的发展了解spring刚出现时,两大主要核心就是IOC和AOP,都是基于XML配置文件的方式,到了JDK1.5发布后,java支持注解开发,spring的很多配置都能用注解实现,减少了XML的配置。那究竟应该用xml还是注解?最好的方式是系统配置如数据源,事务管理等用XML配置,业务类如一个service的管理用注解更好。到了spring3.x,开始支持java配置的方式,spring...

tuichike3668的博客 551

IEM模型,地表粗糙度模拟

利用微波反演土壤水分时候,利用IEM模型可以实现对随机地表的模拟

Spring版本历程及SpringBoot的核心注解

1.SPRING版本历程 1.1 SPRING 1.X 当时开发者,在1.x时代,特点大量xml配置文件,内部编写大量bean标签,没有注解,因为java没出现注解 1.2 spring 2.X java5出现了,为spring的更新奠定了基础。注解和反射的技术,使得spring将xml配置中的对象ioc过程转化成了注解 @Controller @Componet @Service @Repository @Autowired @Resource @Qualifier 有一部分xml配置可以省略

浅时光|初如梦 605

大中型超市收银系统(可直接运行)

光步前台收银系统系统功能:商品销售、商品退货、挂单、收银员权限、会员销售、单品取消、整单取消、商品查询、脱机销售、脱机数据上传,基本资料下载,开钱箱、小票打印、收款结算,支持多币种付款方式(现金、储值卡、礼券、微信等),支持多种促销。运行环境:.net 4.0登陆信息用户名:1001 密码:123456内置商品信息,商品编码可输入00001000 - 00010000,测试效果相关功能键F5 结算 F9挂单 F11商品查询 F8退货 Insert单品取消 Del整单取消 F12开钱箱F2 会员 Ctrl+Z退出系统 Home 锁屏 相关源码待公开

数学建模模型总结

这是本人在两年内准备参加数学建模竞赛搜集到的模型资料,已经经过了本人的筛选和整理,希望能够对准备参加数学建模竞赛的学弟学妹们提供一些帮助!

springboot 实现机器学习_机器学习入门之SpringBoot学习历程

本文主要向大家介绍了机器学习入门之SpringBoot学习历程,通过具体的内容向大家展现,希望对大家学习机器学习入门有所帮助。经过同事介绍,听说了SpringBoot框架,并且亲身感受过这个框架的优势,经过一段时间的学习和使用,故此写博客记录自己学习SpringBoot的全部历程。·入门使用IntelliJIdea新建SpringBoot项目SpringBoot定时任务SpringBoot返回...

weixin_42374596的博客 197

初步学习使用SpringBoot详细历程(一)

随着越来越多的公司使用分布式服务,微服务,SpringBoot已经成为了各个大公司新建项目的首选框架,它似乎也和当初的SSM框架一样成为了一个程序员的必会框架之一.近日,我们将会初步学习如何快速具体的使用SpringBoot. 一.SpringBoot项目的建立(IDEA) 由于是初步学习使用,我们将带大家详细走完创建过程.我们这里采用的工具是idea,首先使用idea新建一个项目,选择Sprin...

qq_41940481的博客 261
下一篇: Maven安装教程
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

RabbitsInTheGrass

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值