初始SpringBoot(1)
回顾什么是Spring
Spring是一个开源框架,2003年兴起的一个轻量级的Java开发框架,作者:Rod Johnson.
Spring是为了解决企业级开发的复杂性而创建的,简化开发。
Spring是如何简化Java开发的
为了降低Java开发的复杂性,Spring采用了以下4中关键策略:
1基于POJO的轻量级和最小侵入式编程,所有的东西都是Bean;
2.通过IOC,依赖注入(DI)和面向接口编程实现松耦合;
3.基于切面(AOP)和惯例进行声明式编程;
4.通过切面和模板减少样式代码,RedisTemplate,xxxTemplate;
什么是SpringBoot
最开始学习javaweb时候开发一个web应用,最初接触Servlet结合Tomcat,实现了第一个HelloWorld程序,再后来是Struts,再后来是SpringMVC,到了现在的SpringBoot,过一两年又会有其他web框架出现;你们有经历过框架不断的演进,然后自己开发项目所有的技术也在不断的变化、改造吗?建议都可以去经历一遍;
springBoot是一个JavaWeb的开发框架,和SpringMvc类似,优点是简化开发,约定大于配置。
所有的技术框架的发展似乎都遵循了一条主线规律:从一个复杂应用场景 衍生 一种规范框架,人们只需要进行各种配置而不需要自己去实现它,这时候强大的配置功能成了优点;发展到一定程度之后,人们根据实际生产应用情况,选取其中实用功能和设计精华,重构出一些轻量级的框架;之后为了提高开发效率,嫌弃原先的各类配置过于麻烦,于是开始提倡“约定大于配置”,进而衍生出一些一站式的解决方案。
SpringBoot不再是配置地狱了蛤蛤蛤..
Spring Boot 基于 Spring 开发,Spirng Boot 本身并不提供 Spring 框架的核心特性以及扩展功能,只是用于快速、敏捷地开发新一代基于 Spring 框架的应用程序。也就是说,它并不是用来替代 Spring 的解决方案,而是和 Spring 框架紧密结合用于提升 Spring 开发者体验的工具。Spring Boot 以约定大于配置的核心思想,默认帮我们进行了很多设置,多数 Spring Boot 应用只需要很少的 Spring 配置。同时它集成了大量常用的第三方库配置(例如 Redis、MongoDB、Jpa、RabbitMQ、Quartz 等等),Spring Boot 应用中这些第三方库几乎可以零配置的开箱即用。
简单来说就是SpringBoot其实不是什么新的框架,它默认配置了很多框架的使用方式,就像maven整合了所有的jar包,spring boot整合了所有的框架 。Spring Boot 出生名门,从一开始就站在一个比较高的起点,又经过这几年的发展,生态足够完善,Spring Boot 已经当之无愧成为 Java 领域最热门的技术。
Spring Boot的主要优点:
-
为所有Spring开发者更快的入门
-
开箱即用,提供各种默认配置来简化项目配置
-
内嵌式容器简化Web项目
-
没有冗余代码生成和XML配置的要求
HELLOWORLD
准备工作
我们将学习如何快速的创建一个Spring Boot应用,并且实现一个简单的Http请求处理。通过这个例子对Spring Boot有一个初步的了解,并体验其结构简单、开发快速的特性。
我的环境准备:
-
java version "1.8.0_181"
-
Maven-3.6.1
-
SpringBoot 2.x 最新版
开发工具:
-
IDEA
创建基础项目说明:
Spring官网提供了非常方便的工具:
Spring Initializr:https://start.spring.io/
创建方式一:使用Spring官网的Spring Initalizr的web页面创建项目
1.https://start.spring.io/
创建方式二:使用Idea直接创建
项目结构分析:
通过上面步骤完成了基础项目的创建。就会自动生成以下文件。(其余的关于git文件说明的可以删除掉发现是真的简便,相对与xml文件不用去配置了)
1、程序的主启动类
2、一个 application.properties 配置文件
3、一个 测试类
4、一个 pom.xml
什么叫做决定大于配置:
就是建包必须在主application同级目录下:
解析pom.xml:
还有最好一个很重要的事情就是Maven的lifecycle(生命周期)有一个package,可以将自己做的项目打成jar包;
找到自己jar包位置,powershell中运行 java -jar -------;
即启动了后端微服务