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 相关文章推荐
Spring Cache和EhCache实现缓存管理方式
Jun 15 Java/Android
Spring Boot 排除某个类加载注入IOC的操作
Aug 02 Java/Android
mybatis中注解与xml配置的对应关系和对比分析
Aug 04 Java/Android
logback如何自定义日志存储
Aug 30 Java/Android
零基础学java之方法的定义与调用详解
Apr 10 Java/Android
Java工作中实用的代码优化技巧分享
Apr 21 Java/Android
Android 中的类文件和类加载器详情
Jun 05 Java/Android
Android Canvas绘制文字横纵向对齐
Jun 05 Java/Android
Java界面编程实现界面跳转
Jun 16 Java/Android
SpringCloud超详细讲解Feign声明式服务调用
Jun 21 Java/Android
java实现自定义时钟并实现走时功能
Jun 21 Java/Android
tree shaking对打包体积优化及作用
Jul 07 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
关于ob_get_contents(),ob_end_clean(),ob_start(),的具体用法详解
2013/06/24 PHP
PHP批量生成静态HTML的简单原理和方法
2014/04/20 PHP
php实现数组中索引关联数据转换成json对象的方法
2015/07/08 PHP
PHP实现发送邮件的方法(基于简单邮件发送类)
2015/12/17 PHP
XHProf报告字段含义的解析
2016/05/17 PHP
php获取指定数量随机字符串的方法
2017/02/06 PHP
基于Jquery的开发个代阴影的对话框效果代码
2011/07/28 Javascript
js window.print实现打印特定控件或内容
2013/09/16 Javascript
jquery复选框checkbox实现删除前判断
2014/04/20 Javascript
js实现文本框中输入文字页面中div层同步获取文本框内容的方法
2015/03/03 Javascript
js 获取元素所有兄弟节点的实现方法
2016/09/06 Javascript
webix+springmvc session超时跳转登录页面
2016/10/30 Javascript
详解js的事件代理(委托)
2016/12/22 Javascript
JavaScript控制输入框中只能输入中文、数字和英文的方法【基于正则实现】
2017/03/03 Javascript
JS实现队列的先进先出功能示例
2017/05/10 Javascript
yarn的使用与升级Node.js的方法详解
2017/06/04 Javascript
JavaScript实现滑动导航栏效果
2017/08/30 Javascript
基于百度地图api清除指定覆盖物(Overlay)的方法
2018/01/26 Javascript
vue中引用swiper轮播插件的教程详解
2018/08/16 Javascript
javascript 模块依赖管理的本质深入详解
2020/04/30 Javascript
Vue 按照创建时间和当前时间显示操作(刚刚,几小时前,几天前)
2020/09/10 Javascript
[01:28:24]NAVI vs VG Supermajor 败者组 BO3 第三场 6.5
2018/06/06 DOTA
python妹子图简单爬虫实例
2015/07/07 Python
Python socket实现简单聊天室
2018/04/01 Python
python numpy 一维数组转变为多维数组的实例
2018/07/02 Python
Django2.1集成xadmin管理后台所遇到的错误集锦(填坑)
2018/12/20 Python
python3+pyqt5+itchat微信定时发送消息的方法
2019/02/20 Python
详解Python 函数如何重载?
2019/04/23 Python
Java ExcutorService优雅关闭方式解析
2020/05/30 Python
GE设备配件:GE Appliance Parts(家电零件、配件和滤水器)
2018/11/28 全球购物
应聘美工求职信
2013/11/07 职场文书
学习方法演讲稿
2014/05/10 职场文书
村党支部书记四风问题个人对照检查材料思想汇报
2014/10/06 职场文书
可可西里观后感
2015/06/08 职场文书
车辆安全隐患排查制度
2015/08/05 职场文书
php TP5框架生成二维码链接
2021/04/01 PHP