SpringBoot系列一:SpringBoot的产生
声明:本文来源于MLDN培训视频的课堂笔记,写在这里只是为了方便查阅。
长期以来 Java 的开发一直让人所诟病:
·Java 项目开发复杂度极其高;
· Java 项目的维护非常困难;
· 在云时代如何实现项目的快速部署以及快速启动;
· 即便使用了大量的开发框架,发现我们的开发也没少多少;
· 当所有的人认为 Spring 不在前进的时候,Spring 推出了微架构实现的两个重要开发框架:SpringBoot、SpringCloud。
1、 Java 开发的复杂度是最高的?
在所有的软件行业里面,如果要说商用体系,排在第一位的永远是 java,因为 java 的体系丰富,支持度高,安全性也高,但是同时我们所有的开发者也不得不去忍受 Java 中的以下痛苦:
· Java 里面提供的开发支持都属于原生操作代码,例如:JDBC 为例,如果使用 Java 原生代码会重复编写大量的内容, 例如:PreparedStatement 操作;
· Java 进行 WEB 项目开发的时候,必须要求按照严格的格式进行 WEB 项目的创建,以及每当修改 WEB 程序的时候 又需要进行 Tomcat 的重新启动;
· Java 之中虽然提供了所谓的开发标准,但是所有的公司几乎都有可能有自己的标准,例如:最初的时代 JVM 的标准 就有三个,而且许多的公司由于版本不同会造成部署的环境不同;
· Java 里面严格要求按照 MVC 的设计模式。
· 以 WEB 开发为例,一个良好的 JSP 程序代码里面不应该包含有任何的 Scriptlet 程序代码,但是要想做到这一步发现 非常麻烦,有各种实现标准,例如:JSTL + EL、SpringTaglib、StrutsTaglib、JSF、Shiro、SpringSecurity;
· 如果现在使用 Node.JS、Python 开发一个控制器程序类可能只需要几行代码,而 Java 要想开发这样一个程序,需要写 一堆的代码,而且还要求搞部署;
2、 Java 后期的发展使用了大量的 Maven 技术作为开发,那么使用了 maven 之后你会发现传统的开发处理之中并没有逃离掉传统 WEB 的身影,所有的项目依然需要打包为 war 文件,而后上传到系统之中。使用 Maven 还有一个最大的痛:如果是开发框架,那 一堆的 Maven 的配置依赖库。
3、 Rest 技术已经开始在行业之中广为流传,而 Java 要想实现 Rest 架构的开发(基于:Spring),那么也是相当麻烦的;
4、 现在行业之中,Spring 已经作为了绝对的 java 架构,但是如果要想在 Spring 之中整合 RabbitMQ、Kafka、ActiveMQ、MySQL、 Druid、Redis、Shiro,需要编写一堆堆的*.xml 配置文件; 所以在这样的一个大的历史背景下,很多人开始寻求更加简便的开发,而遗憾的是这种简便的开发没有被 JDK 所支持、没有 被 JavaEE 所支持,因为这些只是平台,平台能够提供的只是最原始的技术支持。这一时刻终于由于 Spring 框架的升级而得到了新 生,SpringBoot 的出现,改变了所有 Java 开发的困境,SpringBoot 的最终奉行的宗旨:废除掉所有复杂的开发,废除掉所有的配置文件,让开发变得更简单纯粹,核心:“零配置”。
总结:
SpringBoot 的最终奉行的宗旨:废除掉所有复杂的开发,废除掉所有的配置文件,让开发变得更简单纯粹,核心:“零配置”。
SpringBoot整合了所有的框架,就像maven整合了所有的jar一样,使用方便
SpringBoot 之所以慢慢可以火遍全世界,是因为在 SpringBoot 中使用的大量注解还是之前 Spring 所提供的注解,那么这一点
让所有的开发者几乎可以零适应进行完整过渡。其次是开发快速、简单、方便
SpringBoot系列一:SpringBoot的产生的更多相关文章
- Springboot系列:Springboot与Thymeleaf模板引擎整合基础教程(附源码)
前言 由于在开发My Blog项目时使用了大量的技术整合,针对于部分框架的使用和整合的流程没有做详细的介绍和记录,导致有些朋友用起来有些吃力,因此打算在接下来的时间里做一些基础整合的介绍,当然,可能也 ...
- SPRING-BOOT系列之SpringBoot快速入门
今天 , 正式来介绍SpringBoot快速入门 : 可以去如类似 https://docs.spring.io/spring-boot/docs/2.1.0.BUILD-SNAPSHOT/refer ...
- SPRING-BOOT系列之SpringBoot的诞生及其和微服务的关系
转载自 : https://www.cnblogs.com/ityouknow/p/9034377.html 微服务架构 微服务的诞生并非偶然,它是在互联网高速发展,技术日新月异的变化以及传统架构无法 ...
- springBoot系列教程07:异常捕获
发生异常是很正常的事,异常种类也是千奇百怪,发生异常并不可怕,只要正确的处理,并正确的返回错误信息并无大碍,如果不进行捕获或者处理,分分钟服务器宕机是很正常的事 所以处理异常时,最基本的要求就是发生异 ...
- SpringBoot系列——利用系统环境变量与配置文件的分支选择实现“智能部署”
前言 通过之前的博客:SpringBoot系列——jar包与war包的部署,我们已经知道了如果实现项目的简单部署,但项目部署的时候最烦的是什么?修改成发布环境对应的配置!数据库连接地址.Eureka注 ...
- 补习系列(15)-springboot 分布式会话原理
目录 一.背景 二.SpringBoot 分布式会话 三.样例程序 四.原理进阶 A. 序列化 B. 会话代理 C. 数据老化 小结 一.背景 在 补习系列(3)-springboot 几种scope ...
- 补习系列(14)-springboot redis 整合-数据读写
目录 一.简介 二.SpringBoot Redis 读写 A. 引入 spring-data-redis B. 序列化 C. 读写样例 三.方法级缓存 四.连接池 小结 一.简介 在 补习系列(A3 ...
- 补习系列(12)-springboot 与邮件发送
目录 一.邮件协议 关于数据传输 二.SpringBoot 与邮件 A. 添加依赖 B. 配置文件 C. 发送文本邮件 D.发送附件 E. 发送Html邮件 三.CID与图片 参考文档 一.邮件协议 ...
- Springboot 系列(十二)使用 Mybatis 集成 pagehelper 分页插件和 mapper 插件
前言 在 Springboot 系列文章第十一篇里(使用 Mybatis(自动生成插件) 访问数据库),实验了 Springboot 结合 Mybatis 以及 Mybatis-generator 生 ...
- Springboot 系列(九)使用 Spring JDBC 和 Druid 数据源监控
前言 作为一名 Java 开发者,相信对 JDBC(Java Data Base Connectivity)是不会陌生的,JDBC作为 Java 基础内容,它提供了一种基准,据此可以构建更高级的工具和 ...
随机推荐
- psycopg事务
1.事务的特性 原子性,要么完成,要么都不完成 2.psycopg的事务特点 在psycopg中,事务是由connection处理的,当第一次一个命令发送给数据库时(开启数据库操作游标), 一个事务就 ...
- 每日英语:How to Save Detroit
Detroit is beautiful-though you probably have to be a child of the industrial Midwest, like me, to s ...
- 李洪强iOS开发之静态库的打包一
李洪强iOS开发之静态库的打包一 //静态库一般做一下几种事情 //1 工具类 算法逻辑 新建工具类LHQTools 定义类方法 + (NSInteger)sumWithNum1: (NSIntege ...
- pthread之线程堆栈
转:http://blog.csdn.net/horstlinux/article/details/7666032 //先来讲说线程内存相关的东西,主要有下面几条: //进程中的所有的线程共享相同的地 ...
- Python之Cookielib
cookielib模块的主要作用是提供可存储cookie的对象,以便于与urllib2模块配合使用来访问Internet资源.Cookielib模块非常强大,我们可以利用本模块的CookieJar类的 ...
- 【转】mybatis连接Oracle做增删改查
原文地址:http://blog.csdn.net/liumengcheng/article/details/34422475 入门请看http://blog.csdn.NET/liumengchen ...
- 微服务之springCloud-docker-feign配置(五)
简介 上一节我们讨论了怎么用feign声明式调用cloud的生产者,这节我们讨论一下feign配置,通过编写配置类,我们可以自定义feign的日志级别,日志扫描目录,可以通过feign调用服务在eur ...
- 《5天学会卡西欧fx-5800p之实操视频教程(初级)》目录和我的工作室现场曝光
很多人给我讲,想让我录制一份卡西欧fx-5800p的视频教程,我也一直在准备,准备了半年,录制视频真的不是件容易的事,条件有限,而且工作也很忙,中途还会有想放弃的念头,真的是花费了我很多的心血,但不管 ...
- 未能加载文件或程序集“System.Web.Mvc, Version=3.0.0.0,
直接下载安装 ASP.NET MVC 3.0就可以了
- <漫步华尔街——股市历久弥新的成功投资策略>读书笔记
书在这里 随机游走是指基于过去的表现,无法预测将来的发展步骤和方向. 仅仅为了达到盈亏相抵点,你的投资回报率至少也要等于通货膨胀率 磐石理论认为,无论是普通股票还是不动产,每一种投资工具都具有被称为“ ...