spring boot
Intellij IDEA
为什么要使用SpringBoot?长期以来java的开发一直让人所诟病:(1)java项目开发复杂度极其高;(2)java项目的维护非常困难;(3)在云时代如何实现项目的快速部署一起快速启动;(4)即便使用了大量的开发框架,发现我们的开发也没有少很多;(5)当所有的人认为spring不再前进的时候,Spring退出了微架构实现的两个重要的开发框架:SpringBoot、SpringCloud。
为什么java开发的复杂度是最高的?(1)在所有的软件行业里面,如果要说商用体系,排在第一位的永远是java,因为java的体系丰富,支持度高,以及最重要的安全度高。但是我们所有的开发者也不得不去忍受java中的以下痛苦:(1)java里面提供的开发支持都属于原生操作代码,例如:JDBC为例,如果使用java原生代码会重复编写很多的内容,例如:PreparedStatement操作(2)java进行web项目开发的时候,必须要求按照严格的格式进行WEB项目的创建,以及每当修改web程序的时候我们又需要tomcat的重新启动。(3)java之中虽然提供了所谓的开发标准,几乎都有可能有自己的标准,例如:最初的时候jvm的标准就有三个,由于版本的不同会造成部署的环境不同(4)java里面要求严格按照mvc的模式完成。
整个架构之中,业务逻辑层是很容易实现的,麻烦是在控制层。以web开发为例,一个良好的jsp程序代码里面不应该包含有任何的scriptlet的程序代码,但是要想做到这一步,我们发现非常麻烦,有各种实现标准,例如:JSTL+EL,SpringTagLib、StrutsTaglib、JSF、Shiro、SpringSecurity;
如果现在使用NdeJS,Python开发一个控制器程序类可能只需要几行代码,而java要想开发这样一个程序,需要些一堆的代码,而且还要求搞部署;java给人的印象就是麻烦。
java后期的发展使用了大量的maven技术作为开发,那么使用了maven之后你会发现传统的开发处理之中并没有逃离掉传统web的身影,所有的项目依然需要打包为war文件,而后上传到系统之中。使用Maven还有一个最大的痛:如果是开发框架,那么一推的maven配置依赖库足以让人奔溃。
Rest技术已经开始在行业志宏广为流传,而java要想实现Rest架构的开发(基于spring)也是相当麻烦的。现在行业之中,Spring已经作为了绝对的java架构,但是如果想在Spring之中整合RabbitMQ、Kafka、ActiveMQ、Mysql、Druid、Redis、Shiro,需要编写一推推的*.xml配置文件。
在这样一个大的历史背景下,很多人开始寻求更加简便的开发,而遗憾的是这种简便的开发没有被JDK所支持,没有被javaee所支持,因为这些知识平台,平台能够提供的只是最原始的技术支持。这个一时刻由于Spring框架的升级而得到了新生。
SpringBoot的出现,改变了所有java开发的困境,SpringBoot最终奉行的宗旨:废除掉所有负责的开发,废除掉所有的配置文件,让开发变得更简单纯粹,核心“零配置”(这就是个梦)。
我们本课程将使用1.5.8版本作为开发,2.0还不是稳定版,暂时不用
SpringBoot之所以慢慢活便全世界,是因为在SpringBoot中使用的大量注解还是Spring之前所提供的注解,那么这一点可以让所有的开发者几乎可以领适应进行完整过滤