长期以来 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 所提供的注解,那么这一点
让所有的开发者几乎可以零适应进行完整过渡。其次是开发快速、简单、方便