初始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 -------;

即启动了后端微服务

 

原文地址:https://www.cnblogs.com/hujesse4/p/13946427.html