[Spring Boot]什么是Spring Boot
<Spring Boot是什么>
Spring Boot不是一个框架
是一种用来轻松创建具有最小或零配置的独立应用程序的方式
用来开发基于Spring的应用,但只需非常少的配置。
它提供了默认的代码和注释配置,快速启动新的Spring项目而不需要太多时间。
它利用现有的Spring项目以及第三方项目来开发生产就绪(投入生产)的应用程序。
它提供了一组Starter Pom或gradle构建文件,可以使用它们添加所需的依赖项,并且还便于自动配置。
Spring Boot根据其类路径上的库自动配置所需的类。假设应用程序想要与数据库交互,如果在类路径上有Spring数据库,那么它会自动建立与数据源类的连接。
<SpringBoot特点>
创建独立的Spring应用程序
直接嵌入Tomcat,jetty或Undertow(无部署WAR文件)
提供初始化的POM文件内容,简化Maven配置
尽可能自动配置Spring
提供生产就绪的功能,如指标,健康检查和外部化配置
绝对无代码生产,也不需要XML配置
<Spring Boot核心和限制>
SpringBoot不是编写应用程序的框架,它可以帮助我们以最少的配置或零配置开发和构建,打包和部署应用程序
它不是应用程序服务器,但是它是提供应用程序服务器功能的嵌入式Servlet容器,而不是Spring Boot本身。
类似的,Spring Boot不实现任何企业Java规范,例如JPA或JMS。例如Spring Boot不实现JPA,但它通过为JPA实现,(例如Hibernate)自动配置适当的bean来支持JPA
Spring Boot不适用任何形式的代码生成来完成它的功能。它是利用Spring 4的条件配置功能,以及Maven和Gradle提供的传递依赖关系解析,以在Spring应用程序上下文中自动配置bean。
简而言之,Spring Boot它的核心就是Spring。
<Spring Boot优点和缺点>
使用Java或Groovy开发基于Spring的应用程序非常容易。
它减少了大力量的开发时间并提高了生产力。
它避免了编写大量的样板代码,注释和XML配置
Spring Boot应用程序与其Spring生态系统(如:Spring JDBC,Spring ORM,Spring Data,Spring Secutity等)
它遵循“自用默认配置”方法,以减少开发工作量
它提供嵌入式HTTP服务器,如Tomcat,Jetty等,以开发和测试Web应用程序非常容易
它提供CLI(命令行界面)工具从命令提示符,非常容易和快速的开发和测试SpringBoot(Java或Groovy应用程序)
它提供了许多插件来开发和测试Spring启动应用程序非常容易使用构建工具,如Maven和Gradle。
它提供了许多插件,以便与嵌入式和内存数据库工作非常容易。
<Spring Boot的限制>
将现有或传统的Spring Framework项目转换为Spring Boot应用程序是一个非常困难和耗时的过程。它仅适用于全新Spring项目。
未来的Spring项目不会有任何XML配置作为它的一部分,一切都将由项目Spring Boot处理。
<Spring Boot主要目标>
为所有Spring开发提供一个基本的,更快,更广泛的入门体验。
开箱即用,但随着需求开始偏离默认值,快速启动。
提供大型项目(例如嵌入式服务器,安全性,度量,运行状况检查,外部化配置)常见的一系列非功能特性。
绝对没有代码生成以及不需要XML配置,完全避免XML配置。
为了避免定义更多的注释配置(它将一些现有的 Spring Framework 注释组合成一个简单的单一注释)
避免编写大量import语句。
提供一些默认值,以便在短时间内快速启动新项目。
[Spring Boot]什么是Spring Boot的更多相关文章
- spring boot(五):spring data jpa的使用
在上篇文章springboot(二):web综合开发中简单介绍了一下spring data jpa的基础性使用,这篇文章将更加全面的介绍spring data jpa 常见用法以及注意事项 使用spr ...
- spring boot(三):Spring Boot中Redis的使用
spring boot对常用的数据库支持外,对nosql 数据库也进行了封装自动化. redis介绍 Redis是目前业界使用最广泛的内存数据存储.相比memcached,Redis支持更丰富的数据结 ...
- 使用 Spring Boot 快速构建 Spring 框架应用--转
原文地址:https://www.ibm.com/developerworks/cn/java/j-lo-spring-boot/ Spring 框架对于很多 Java 开发人员来说都不陌生.自从 2 ...
- Spring REST实践之Spring Boot
Spring Boot基本描述 可以利用http://start.spring.io网站的进行Spring Boot的初始化构建.这个初始化构建器允许你输入工程基本信息.挑选工程支持的功能,最后会生成 ...
- 使用 Spring Boot 快速构建 Spring 框架应用,PropertyPlaceholderConfigurer
Spring 框架对于很多 Java 开发人员来说都不陌生.自从 2002 年发布以来,Spring 框架已经成为企业应用开发领域非常流行的基础框架.有大量的企业应用基于 Spring 框架来开发.S ...
- Spring Boot——开发新一代Spring应用
Spring官方网站本身使用Spring框架开发,随着功能以及业务逻辑的日益复杂,应用伴随着大量的XML配置文件以及复杂的Bean依赖关系.随着Spring 3.0的发布,Spring IO团队逐渐开 ...
- Spring Boot中使用 Spring Security 构建权限系统
Spring Security是一个能够为基于Spring的企业应用系统提供声明式的安全访问控制解决方案的安全框架.它提供了一组可以在Spring应用上下文中配置的Bean,为应用系统提供声明式的安全 ...
- Spring Boot(五):Spring Boot Jpa 的使用
在上篇文章Spring Boot(二):Web 综合开发中简单介绍了一下 Spring Boot Jpa 的基础性使用,这篇文章将更加全面的介绍 Spring Boot Jpa 常见用法以及注意事项. ...
- (转)Spring Boot (十三): Spring Boot 小技巧
http://www.ityouknow.com/springboot/2017/06/22/spring-boot-tips.html 一些 Spring Boot 小技巧.小知识点 初始化数据 我 ...
- (转)Spring Boot(五):Spring Boot Jpa 的使用
http://www.ityouknow.com/springboot/2016/08/20/spring-boot-jpa.html 在上篇文章Spring Boot(二):Web 综合开发中简单介 ...
随机推荐
- Beaglebone板子修改usb连接时的默认IP192.168.0.2
首先除了有个USB线外,你还需要一个USB转串口的线(目的是防止修改错误,无法使用原来的usb的IP地址登陆,心大的可以跳过这步直接进入重点),串口线连接方法如下图: 将USB以及串口和PC机相连 ...
- Vertical viewport was given unbounded height
new Expanded( child: new ListView( ..... ) ); +++++++++++++++ 可以通过指定shrinkWrap = true为了你ListView. Li ...
- webpack搭建项目时出现的报错“Module build failed (from ./node_modules/css-loader/dist/cjs.js) CssSyntaxError”
控制台出现的错误如下: webpack.config.js中的配置如下: module.exports={ entry:'./src/main.js', output:{ path:__dirname ...
- SpringBootsad整合EhCache做缓存处理
轻量级的缓存框架Ehcache实现其功能.从以下几点切入: 什么是EhCache? 它和redis.membercache比较有什么优势? 和SpringBoot怎么整合? 实现机制? 有哪些坑? E ...
- topcoder srm 580 div1
problem1 link 最优选择一定是在$2n$个端点中选出两个. problem2 link 分开考虑每个区间.设所有区间的左端点的最大值为$lc$,所有区间的右端点的最小值为$rc$.对于某个 ...
- Linux内核 kmalloc, kzalloc & devm_kzalloc 区别【转】
本文转载自:https://blog.csdn.net/u014628531/article/details/50711409 首先,kzalloc()实现了kmalloc()+memset()的功能 ...
- Java正则中为什么反斜线"\"需要用“\\\\”表示,原因详解。
首先,我们需要知道在java字符串和正则表达式中,“\”都具有特殊的含义. 一.在Java的字符串中"\"有两个功能 (一)代表特殊字符:\t代表制表符,\n代表换行....等. ...
- Learning-Python【24】:面向对象之组合
组合的概念 一个类的对象具备某一个属性,该属性的值是来自于另外一个类的对象,称之为组合,组合也是用来解决类与类之间代码冗余的问题 组合的使用 在继承中,举了一个属性查找顺序方式一的例子,最终的实现成果 ...
- AutoFac在MVC中的使用
在asp.net mvc控制器中使用Autofac来解析依赖 如下Controller中使用构造函数依赖注入接口IUserService: public IUserService _IUserServ ...
- Qt打开文件对话框同时选中多个文件或单个文件
Qt中打开单个文件 //str_path为文件路径 QString str_path = QFileDialog::getOpenFileName(this, tr("选择转码文件" ...