SpringBoot快速入门详解


Posted in Java/Android onJuly 21, 2021

Spring Boot是什么?

Spring Boot并不是什么新的框架,它是对Spring的缺点进行了改善和优化,Spring Boot默认了很多的框架使用方式,像maven整合了所以jar包同一个道理。及SpringBoot并不是对Spring功能上的增强,而是提供了一种快速使用Spring的方式而已。

为什么使用Spring Boot?

Spring Boot官方是这么说的:Spring Boot它是基于Spring开发项目的起点,Spring Boot的设计主要是让你快速地跑起来Spring应用程序的,且尽量让你减少配置文件。在使用SSM框架时,我们开发人员浪费了很多的时间在配置方面,而Spring Boot框架为你减少这些繁琐的配置,而是你专注业务逻辑代码编写,从而提高开发的效率。

简述

  springboot提供了一种快速使用spring的方式,基于coc的思想,即约定大于配置。可以让开发人员不必在配置与逻辑业务之间进行思维的切换,全身心投入逻辑业务的代码编写中,从而大大地提高了开发的效率。springboot是14年发布的,是一门非常新的技术,springboot是spring的顶级项目之一。

spring的缺点

  spring用起来很爽,但还是有令人讨厌的地方。

配置繁琐

  spring的组件是轻量级的,但配置是重量级的。我们在用spring框架的同时要写很多的配置xml或者注解,我们的思维会在业务代码和spring配置之间来回切换,开发效率就降低了。

依赖繁琐

  spring的各个组件有不同的依赖,在环境搭建时,需要分析要导入哪些库的坐标,而且还要分析导入与之有依赖关系的其他库的坐标,一旦选错了依赖的版本,随之而来的不兼容问题就会严重阻碍项目的开发进度。

springboot的功能

  我们需要知道的是,springboot并不是对spring功能上的增强,而是提供了一种快速使用spring的方式。

自动配置

  SpringBoot的自动配置是一个运行时(更准确地说,是应用程序启动时)的过程,考虑了众多因素,才决定spring配置应该用哪个,不该用哪个,这个过程是springboot自动完成的。

起步依赖

  以前我们导jar包坐标的时候是一个一个导的,现在springboot将某种功能的包都包裹在一起,一起提供一些默认的功能。

辅助功能

  提供了一些大型项目中常见的非功能特性,如嵌入式服务器、安全、指标、健康检测、外部配置等。

SpringBoot快速入门

  现在我们想用springboot完成这样一个需求:定义HelloController类的hello方法,返回"Hello SpringBoot"。

  如果我们用spring来做,那就是导很多坐标,然后定义类,加注解,写xml配置

  现在我们用springboot来搭建环境,pom.xml只需写如下内容即可

  springboot默认的打包方式是jar

<!--springboot需要继承的父工程-->
<parent>
    <groupId>org.springframework.boot</groupId>
    <artifactId>spring-boot-starter-parent</artifactId>
    <version>2.1.8.RELEASE</version>
</parent>

<dependencies>
    <!--web相关的依赖-->
    <dependency>
        <groupId>org.springframework.boot</groupId>
        <artifactId>spring-boot-starter-web</artifactId>
    </dependency>
</dependencies>

  idea提供了一种快速构建springboot的方式

  我们可以在创建项目的时候选spring Initializr,即可快速创建一个springboot项目

SpringBoot快速入门详解

  填写项目相关信息

SpringBoot快速入门详解

  然后可以添加web支持

SpringBoot快速入门详解

  然后idea就会自动创建springboot项目环境,maven的坐标也都导好了。

到此这篇关于SpringBoot入门详解的文章就介绍到这了,更多相关SpringBoot入门内容请搜索三水点靠木以前的文章或继续浏览下面的相关文章希望大家以后多多支持三水点靠木!

Java/Android 相关文章推荐
Jackson 反序列化时实现大小写不敏感设置
Jun 29 Java/Android
Java并发编程必备之Future机制
Jun 30 Java/Android
Sleuth+logback 设置traceid 及自定义信息方式
Jul 26 Java/Android
JavaWeb Servlet开发注册页面实例
Apr 11 Java/Android
详细介绍Java中的CyclicBarrier
Apr 13 Java/Android
解决springboot druid数据库连接失败后一直重连的方法
Apr 19 Java/Android
Java由浅入深通关抽象类与接口(下篇)
Apr 26 Java/Android
JAVA 线程池(池化技术)的实现原理
Apr 28 Java/Android
带你了解Java中的ForkJoin
Apr 28 Java/Android
Java 多线程协作作业之信号同步
May 11 Java/Android
Android 中的类文件和类加载器详情
Jun 05 Java/Android
SpringBoot详解整合Redis缓存方法
Jul 15 Java/Android
java设计模式--三种工厂模式详解
gateway与spring-boot-starter-web冲突问题的解决
Jul 16 #Java/Android
springboot集成springCloud中gateway时启动报错的解决
Jul 16 #Java/Android
JavaWeb 入门篇(3)ServletContext 详解 具体应用
JavaWeb 入门:Hello Servlet
JavaWeb 入门篇:创建Web项目,Idea配置tomcat
mybatis 获取无数据的字段不显示的问题
Jul 15 #Java/Android
You might like
php数组函数序列之rsort() - 对数组的元素值进行降序排序
2011/11/02 PHP
php实现邮件发送并带有附件
2014/01/24 PHP
Yii统计不同类型邮箱数量的方法
2016/10/18 PHP
PHP简单实现二维数组赋值与遍历功能示例
2017/10/19 PHP
Javascript中eval函数的使用方法与示例
2007/04/09 Javascript
select标签模拟/美化方法采用JS外挂式插件
2013/04/01 Javascript
js中的内部属性与delete操作符介绍
2015/08/10 Javascript
AngularJS之依赖注入模拟实现
2016/08/19 Javascript
js实现canvas保存图片为png格式并下载到本地的方法
2017/08/31 Javascript
VUE2实现事件驱动弹窗示例
2017/10/21 Javascript
Vue+Vux项目实践完整代码
2017/11/30 Javascript
JS使用H5实现图片预览功能
2019/09/30 Javascript
JavaScript队列结构Queue实现过程解析
2020/03/07 Javascript
python调用cmd复制文件代码分享
2013/12/27 Python
Python验证文件是否可读写代码分享
2017/12/11 Python
Python实现按逗号分隔列表的方法
2018/10/23 Python
Flask核心机制之上下文源码剖析
2018/12/25 Python
django框架model orM使用字典作为参数,保存数据的方法分析
2019/06/24 Python
在Python中表示一个对象的方法
2019/06/25 Python
Python爬取视频(其实是一篇福利)过程解析
2019/08/01 Python
python二进制读写及特殊码同步实现详解
2019/10/11 Python
HTML5 canvas实现的静态循环滚动播放弹幕
2021/01/05 HTML / CSS
地球上最先进的胡子和头发修剪器:Bevel
2018/01/23 全球购物
写出一个方法实现冒泡排序
2016/07/08 面试题
教师实习期自我鉴定
2013/10/06 职场文书
策划创业计划书
2014/02/06 职场文书
保护环境建议书
2014/03/12 职场文书
安全生产目标责任书
2014/04/14 职场文书
公司授权委托书范文
2014/08/02 职场文书
珠宝的促销活动方案
2014/08/31 职场文书
私人委托书格式
2014/09/10 职场文书
金秋助学感谢信
2015/01/21 职场文书
用Python将库打包发布到pypi
2021/04/13 Python
JavaScript数组reduce()方法的语法与实例解析
2021/07/07 Javascript
R9700摩机记
2022/04/05 无线电
python标准库ElementTree处理xml
2022/05/20 Python